Sunteți pe pagina 1din 6

4 Diagramele de activiti i diagramele strilor de tranziie

Modelul domeniului, realizat n etapa de analiz a unui sistem informaional, trebuie s conin descrieri ale fluxurilor de activiti specifice funcionalitilor sistemului i descrieri ale strilor prin care trec unele obiecte.

4.1 Diagramele de activiti


Diagramele de activiti se pot defini pentru descrierea: 1. elementelor interne unui anumit caz de utilizare (scenariile de lucru); 2. logicii unor metode (extinznd semantica schemelor logice); 3. descrierea fluxurilor de lucru n general, altfel spus descrierea pailor de lucru necesari atingerii un anumit obiectiv, fr ca acestea fluxuri de lucru s fie strict legate de sistemele informaionale, ci doar de domeniul unei afaceri. Diagramele de activiti conin:
Element nod iniial nod final Flux Aciune nod de decizie Reprezentare grafic Descriere locul din care ncepe fluxul de activiti locul n care se termin fluxul de activiti Un conector care arat ordinea de execuie a celorlaltor elemente Un pas dintr-o activitate, ce poate eventual s fie definit mai n detaliu cu ajutorul altei diagrame de activiti. Blocul de decizie ce poate avea un flux de intrare i dou sau mai multe fluxuri de ieire. Pot fi folosite att pentru crearea structurilor alternative simple/generalizate, ct i pentru crearea structurilor repetitive condiionate anterior/posterior O condiie ce trebuie ndeplinit pentru a se continua execuia pe un anumit flux. Se ataeaz de obicei fluxurilor de ieire din blocurile de decizie. Bloc de unire a fluxurilor de ieire din nodurile de decizie. Bloc de creare a mai multor fire de execuie concurente. Bloc de unire a mai multor fire de execuie. Grup de date transmise pe un flux. Element de grupare a aciunilor n funcie de persoanele / grupurile de persoane responsabile de ndeplinirea acestora. Fiecare activitate este alocat unui anumit grup de activiti (unei partiii create de liniile de departajare), fr ca poziiile relative ale activitilor s aib o semnificaie, fluxurile fiind libere s traverseze partiiile la care nu se refer.

Rol

[text]

nod de unire nod de bifurcare nod de jonciune nod obiect linii de departajare

Fig. 1 Elementele unei diagrame de activiti Activitile prezentate n aceast diagram se pot desfura n mod paralel, fcnd din diagramele de activitate instrumente excelente de folosit n cazul aplicaiilor cu mai multe

fire de execuie sau n cazul operaiilor n care diveri membri ai unei echipe au diverse sarcini de ndeplinit pentru atingerea unui anumit obiectiv. n cadrul diagramei de activiti pot fi introduse i obiecte care sunt afectate de aciunile descrise, astfel vorbind de noduri obiect. Fluxurile din diagrama de activiti sunt de dou feluri: fluxuri de control i fluxuri obiect. Fluxurile de control sunt acele fluxuri care arat succesiunea execuiei aciunilor i a activitilor, iar fluxurile obiect sunt fluxurile dintre aciuni sau activiti i obiectele afectate. Cnd un obiect are dou fluxuri obiect, unul de ieire dintr-o activitate (de care a fost afectat) i unul de intrare ntr-o alt activitate (pe care o declaneaz), ntre cele dou activiti nu mai sunt necesare fluxuri de control explicite. Diagrama urmtoare prezint fluxul de activiti specific procesului de admitere la facultate.

Fig. 1 Diagrama de activiti n procesul de admitere

Diagrama de activiti poate fi folosit pentru a descrie toate activitile realizate cu un anumit scop i nu doar un obiect cu strile lui succesive. Dac dup citirea diagramei din figura 1 vom descoperi c putem avea ntrebri ce in de starea unui anumit dosar, nseamn c se impune completarea modelului domeniului i cu o diagram a strilor de tranziie pentru clasa Dosar. Deoarece diagrama nu face referire la un singur dosar, atunci o citim din punctul de vedere al conducerii facultii i nu din punctul de vedere al unui anumit candidat. Diagrama de mai sus ne descrie un flux de aciuni i poate fi folosit n scopul uurrii organizrii unui proces de admitere, inclusiv la transmiterea experienelor acumulate viitoarelor persoane implicate n aceast activitate.

Toate obiectele din diagram de pn la primul nod de unire (primul romb) pot fi incluse ntr-o activitate mai mare (nscriere), deoarece ntr-o activitate putem avea alte activiti i aciuni. Diagrama ne arat c n perioada de nscriere au loc n paralel cinci activiti: ncasarea taxei de nscriere, depunerea dosarelor, operarea, verificarea i corectarea lor. Execuia n paralel este reprezentat cu un conector de bifurcare. Trebuie evitat folosirea n astfel de cazuri a nodurilor de decizie, deoarece ele nu arat execuia n paralel a activitilor, ci execuia unei singure activiti din grupul respectiv, n funcie de o condiie. Forma actual a diagramei nu ne arat: - cine este responsabil de fiecare activitate; - ordine procesrii unui anumit dosar; Responsabilul pentru o activitate poate fi scos n eviden cu ajutorul liniilor de departajare (swimlane). Acestea nu sunt ns obligatorii. n exemplul de mai sus, nu au fost introduse astfel de linii, pentru a nu crete complexitatea diagramei i deoarece, n mare, fiecare activitate ar fi corespuns unui alt grup de persoane. Ordinea procesrii unui dosar poate fi prezentat ntr-o diagram a strilor de tranziie, diagrama de activiti nereuind singur s modeleze ntregul domeniu al problemei. Cu diagramele de activiti putem descrie i logica de implementat ntr-o metod, procedur sau proiect. n exemplul urmtor descriem logica unei aplicaii ce genereaz anumite rapoarte sub forma unor fiiere pe baza unor date importate tot din fiiere. Aciunea creare raport este detaliat tot cu ajutorul unei diagrame de activiti.

Fig. 2 Diagrama de activiti specific unei aplicaii de import i export de date

Fig. 3 Diagrama de activiti Creare raport specific obinerii unui raport sub form electronic

4.2 Diagramele strilor de tranziie


Diagramele strilor de tranziie sunt utilizate n prezentarea strilor prin care trec diferite tipuri de obiecte, precum i evenimentele care determin tranziiile de la o stare la alta. Astfel de diagrame se realizeaz doar pentru clasele al cror comportament este influenat de schimbrile de stare a obiectelor. Elementele componente ale unei diagrame a strilor de tranziie seamn izbitor de mult cu cele ale unei diagrame de activiti: tranziii (reprezentate grafic asemntor cu fluxurile), stri (reprezentate grafic asemntor cu aciunile), noduri iniiale, noduri finale, noduri de decizie, roluri i noduri de unire. Dei simbolurile grafice utilizate n diagramele de activiti seamn cu cele folosite n diagramele strilor de tranziie, acestea sunt dou diagrame total diferite ca semantic. Diferenele majore sunt date n special de faptul c activitile din diagramele de activiti nu fac referire numai la instanele unei clase ca diagramele strilor de tranziie. Diagramele de activiti conin n plus fa de diagramele strilor de tranziie, elemente specifice prelucrrilor pe mai multe fire de execuie (prelucrri sincrone i prelucrri asincrone). O stare este caracterizat de valorile proprietilor unui obiect i de mulimea mesajelor care pot fi acceptate de ctre acest obiect la un moment dat. O stare conine aciuni iniiale, aciuni finale i tranziii interne, o tranziie intern putnd conine mai multe aciuni. O aciune poate consta n executarea unei anumite proceduri. n cadrul diagramelor strilor de tranziie pot fi introduse i stri compuse, ce conin un numr finit de stri simple sau alte stri compuse. Un obiect aflat ntr-o stare compus se va afla n una i numai una din substrile acesteia. O astfel de stare poate fi detaliat printr-o alt diagram a strilor de tranziie. Diagramele strilor de tranziie conin o serie de stri, cum ar fi: starea iniial: indic starea unui obiect, nainte ca orice aciune din diagram s se fi realizat:

starea final: indic distrugerea obiectului sau terminarea unei stri compuse i revenirea la diagrama de stare superioar; starea istoric: este utilizat atunci cnd substarea iniial a unei stri compuse nu este fixat dect pentru prima tranziie spre aceast stare compus. Un eveniment este apariia unui stimul ce poate duce la o tranziie de la o stare la alta. Exist totui i tranziii ce nu au un eveniment declanator. O tranziie exprim trecerea unui obiect dintr-o stare (surs) n alta (destinaie) i prezint, eventual, aciunile specifice acestei treceri. Tranziiile se reprezint grafic prin intermediul unor arce de cerc sau linii drepte. Trecerea de la o stare la alta se poate realiza prin dou tipuri de structuri fundamentale de control: structuri secveniale i structuri alternative. Secvena este conexiunea direct dintre dou sau mai multe elemente, iar structura alternativ este structura ce permite alegerea strii urmtoare n funcie de o anumit condiie. Prin combinarea acestor dou structuri se pot obine i structuri repetitive. O tranziie poate avea ca i condiie de declanare (guard condition) o expresie logic. Dup apariia evenimentului declanator se evalueaz expresia logic. Dac aceasta este adevrat se declaneaz tranziia, dac nu este adevrat nu se declaneaz tranziia. Condiia de declanare se scrie ntre paranteze drepte dup numele tranziiei. Structurilor secveniale li se pot ataa conectori de bifurcare (ramificare) sau conectori de jonciune (implementeaz operatorul logic AND). Cu ajutorul unui conector de bifurcare se poate face tranziia (sincron sau asincron) de la o stare la dou sau mai multe stri. Conectorul de jonciune face trecerea la o stare dup trecerea prin dou sau mai multe stri anterioare. Aceti conectori se folosesc doar dac obiectul analizat poate avea mai multe substri n acelai timp. n diagrama din figura 5.1 este redat un exemplu de diagram a strilor de tranziie realizat pentru clasa Comand dintr-un sistem de gestiune a comenzilor clienilor.

Fig. 5.1 Diagrama strilor de tranziie pentru clasa Comand Comanda, dup ce este completat cu produsele cerute de client, intr n starea Neprocesat pn la momentul lurii unei decizii privind aprobarea acesteia. Decizia este un element specific sistemului de conducere. Cum sistemul de conducere este diferit de sistemul informaional i de sistemul operaional, putem spune c diagramele strilor de tranziie (ca i diagramele de activiti) sunt folosite pentru a prezenta modelul afacerii i nu doar sistemul informaional economic respectiv.

O comand n starea Neaprobat i termin ciclul de via. Starea Neaprobat poate fi detaliat cu o nou diagram a strilor de tranziie n care fiecare substare s conin i motivul neaprobrii: depirea soldului admis clientului respectiv, probleme tehnice de producie, probleme de expediere sau alte motive. Cum o comand poate fi respins din mai multe motive, substrile strii Neaprobat pot fi reprezentate mpreun cu conectori de bifurcare i de jonciune. i starea n curs de producie poate fi detaliat cu o nou diagram prin care s fie reprezentate strile specifice procesului de producie. O comand n starea Aprobat intr ntr-un proces de onorare, care include verificarea stocului curent, eventuala producie a produselor ce nu se afl pe stoc i livrarea comenzii. Onorarea comenzii presupune i ea terminarea ciclului de via a comenzii (chiar dac acest obiect este persistent). Exemplul conine i condiii de declanare ale tranziiilor. Pe lng condiiile de declanare specifice structurilor alternative se prezint i condiii de declanare n structuri secveniale. De exemplu, tranziia de la starea n curs de producie la starea n curs de livrare se face la apariia ca i eveniment declanator a unui document ce atest terminarea unui lot de producie (bon de predare primire) i dup compararea cantitilor de pe stoc cu cele comandate.