You are on page 1of 17

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Cuprins
Entiti .......................................................................................................................................................................................... 2 Entiti de structur........................................................................................................................................................... 2 Entiti de comportament ............................................................................................................................................... 3 Entiti de grupare ............................................................................................................................................................. 3 Entiti de adnotare ........................................................................................................................................................... 4 Relaii n UML ............................................................................................................................................................................ 4 Diagramele n UML .................................................................................................................................................................. 5 Diagrama cazului de utilizare ........................................................................................................................................ 5 Elementele DCU .............................................................................................................................................................. 6 Relaii n diagrama cazului de utilizare ..................................................................................................................... 7 Diagrama de secven. ...................................................................................................................................................... 8 Diagrama de colaborare ................................................................................................................................................ 10 Multiobiect ..................................................................................................................................................................... 11 Obiecte active i pasive ............................................................................................................................................. 11 Obiect compus .............................................................................................................................................................. 11 Stereotipuri de legturi ............................................................................................................................................ 11 Elementul colaborare ................................................................................................................................................ 11 Niveluri ............................................................................................................................................................................ 11 Diagrama claselor ............................................................................................................................................................ 12 Clasa .................................................................................................................................................................................. 12 Relaii ............................................................................................................................................................................... 12 Diagrama de stare ............................................................................................................................................................ 13 Automat ........................................................................................................................................................................... 13 Starea ............................................................................................................................................................................... 13 Numele strii...................................................................................................................................................................... 13 Tranziia............................................................................................................................................................................... 14 Starea compus ................................................................................................................................................................. 14 Sub-stri disjuncte ........................................................................................................................................................... 14 Sub-stri concurente ...................................................................................................................................................... 14 Exemple diagrama de stare ......................................................................................................................................... 14 Diagrama de activiti ......................................................................................................................................................... 15 Partiia ....................................................................................................................................................................................... 15 Obiectul ..................................................................................................................................................................................... 16 Diagrama componente ....................................................................................................................................................... 16

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Entiti
n UML sunt 4 tipuri de entiti: 1. 2. 3. 4. De structur Comportament Grupare Adnotare

Entiti de structur
Entitile de structur sunt substantivele n UML. De regul ele reprezint prile statice ale modelului care corespund elementelor conceptuale sau fizice ale sistemului. Entiti de baz de structur: 1. Clasa. Clasa este descrierea multitudinii de obiecte cu aceleai atribute, metode i sintaxe. Reprezentarea grafic n UML este un dreptunghi cu 3 secii (nume, atribute, metode): Fig. Nume Atribute Metode 2. 1. Nivele de acces n clas: public (+), private (-), protected (#). 3. Interfaa: Interfaa - reprezint o totalitate de operaii care definesc serviciile oferite de o clas sau component (cerc, I Nume). 4. Caz de utilizare: Caz de utilizare - (elips orizontal cu linie nentrerupt) reprezint o descriere a consecutivitii de aciuni ndeplinite de sistem care produc un rezultat semnificativ pentru un anumit actor. 5. Colaborare: Colaborare - (elips orizontal cu linie ntrerupt) definete o interaciune care reprezint o totalitate de roluri ce produc un efect corporativ. 6. Clas activ:

Clas activ - (clas cu perimetru conturat) clasa elementele creia sunt antrenate n unul sau mai multe procese i pot iniia o aciune de administrare. 7. Componenta: Cules de: Bnzari Marin & Jaloba Victor 2

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

New Component

Componenta - (dreptunghi cu 2 bucle n stnga) reprezint partea fizic a sistemului care corespund unui set de interfee i asigur realizarea lui. 8. Nod:

- procesor i dispozitiv n Enterprise

- dispozitiv numai n Rational Rose


New Device

Nod(cub) partea real a sistemului care conine un mijloc de calcul cu un anumit volum de memorie i deseori cu posibilitatea de prelucrare a informaiilor. Exist numai n timpul funcionrii unui program. n afara acestor 7 uniti mai sunt: actori, semnale, utilite tipuri de clas procese, iruri tipuri de clase active documente, tabele, aplicaii, fiiere, biblioteci, pagini web tipuri de componente

Entiti de comportament
Entitile de comportament sunt componentele dinamice ale UML, verbele limbajului care descriu comportamentul modelului n timp i spaiu. Sunt 2 tipuri: 1. Interaciunea: I Interaciunea - (sgeat) mod de comportare care const n schimbul reciproc de mesaje ntre obiecte, n cadrul unui anumit context pentru atingerea unui scop anumit. 2. Automat: II Automat - (dreptunghi orizontal cu coluri rotunde) algoritm care definete o succesiune de stri prin care trece obiectul pe parcursul ciclului de via. Automatul e realizat de ctre o succesiune de elemente ca stri i tranziii.

Entiti de grupare
a Cules de: Bnzari Marin & Jaloba Victor 3

Analiza i Modelarea Sistemelor Informaionale


NewPackage

Profesor: Radu Melnic

Entitile de grupare reprezint prile organizaionale n UML. Exist doar tipul Package (folder) mecanism universal de organizare n grup. Poate grupa toate tipurile de entiti.

Entiti de adnotare
A
Note

Entiti de adnotare n UML se numesc pri explicative. Este un tip Note (remark, fil dreptunghi cu col ndoit) reprezint un simbol pentru prezentarea comentariilor i restriciilor. Legtura se face prin linie ntrerupt.

Relaii n UML
n UML sunt 4 tipuri de relaii: 1. 2. 3. 4. Dependena Asocierea Generalizarea Realizarea

Relaiile sunt nite elemente de legtur dintre entiti. 1. Dependena relaia dintre 2 entiti, una dintre ele fiind independent iar cealalt dependent (dependent - - - - - independent). Schimbarea strii celei independente va provoca schimbri n entitatea dependent. Student - - - - Profesor. 2. Asocierea
Sau A

Rol Multitudini

Nume

Rol Multitudini

Asocierea reprezint o legtur semantic dintre 2 entiti. Prin legtur se subnelege schimbul reciproc de mesaje, ntre obiecte. (Linie continu, nume deasupra liniei pe centru, rol deasupra liniei stnga sau dreapta, multitudine sub linie stnga sau dreapta, triunghi haurat spre stnga sau drepta indic cine primul trimite mesaje). Rol = Nivel_acces+Nume. Multitudine = {0, 0..1, 0..n, 1..n, n}. Asocierea poate s fie unidirecional (linie continu cu sgeat). Caz particular al asocierii este agregarea. La rndul su agregare are o form special compoziie. Agregarea (linie continu cu romb nehaurat la elementul ntreg) este o relaie specific dintre partea ntreag i partea component. Compoziia Cules de: Bnzari Marin & Jaloba Victor 4

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

(linie continu cu romb haurat la elementul ntreg) relaia dintre partea ntreag i partea component, ns comparativ cu agregare, la compoziie prile componente nu pot exista fr partea ntreag. 3. Generalizare (linie continu cu triunghi nehaurat la printe) relaie de tip specializare/generalizare, n urma creia elementul specializat (descendent) poate substitui elementul generalizat (printe). Cu alte cuvinte descendentul motenete structura i comportamentul printelui. 4. Realizarea (linie ntrerupt cu triunghi nehaurat) relaia dintre 2 entiti una dintre care reprezint garantul ndeplinirii unui contract, iar cea de-a doilea ndeplinete contractul dat. Realizarea se utilizeaz n 2 cazuri: a. ntre interfa i clasa (sau componenta) ce o realizeaz

b. ntre caz de utilizare i colaborarea ce o realizeaz

Diagramele n UML
1. Diagrama cazului de utilizare (Use Case) 2. Diagrame de interaciune: a. Diagrama secven b. Diagrama colaborare 3. Diagrama claselor 4. Diagrame de comportament: a. Diagrama de stri b. Diagrama de activiti 5. Diagrama de componente 6. Diagrama de amplasare

Diagrama cazului de utilizare


Modelarea vizual n UML poate fi reprezentat ca un proces de lansare pe nivel de la cel mai general (abstract) spre modelul logic, apoi spre modelul fizic. Diagrama cazului de utilizare (DCU) descrie destinaia funcional a sistemului (ceea ce sistemul va executa n procesul su de funcionare). Proiectarea DCU are scopurile: Determinarea limitelor comune i a contextului domeniului de modelare la etapa iniial de proiectare a unui sistem Formularea cerinelor comune ctre comportarea funcional a sistemului proiectat Elaborarea modelului iniial, conceptual al unui sistem pentru urmtoarea detaliere n formele logice i fizice ale sistemului

n caz general DCU reprezint un graf, entitile crora (actorii) sunt muchiile i relaiile sunt legturile.

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Elementele DCU
Caz de utilizare

Elips cu linie nentrerupt. Cazul de utilizare se utilizeaz pentru particularitile comune ale comportrii unui sistem sau a oricrei alte entiti din domeniul de lucru, fr de a cerceta structura intern a acestei entiti. Fiecare caz de utilizare determin o succesiune de aciuni care trebuie executate de un anumit actor. Numele cazului de utilizare trebuie s fie un verb sau fraz verbal. Scopul principal a cazului de utilizare const n determinarea comportrii unei anumite entiti fr descrierea structurii interne a acesteia. Fiecare caz de utilizare corespunde unui serviciu (actor) aparte. Actor Actor Nume

Grafic: un celovecic, omule. Actorul reprezint o entitate extern fa de sistemul proiectat care interacioneaz cu sistemul i utilizeaz posibilitile lui funcionale pentru atingerea unor anumite scopuri. Actorul poate fi: om, sistem, instalaie tehnic, produs program, care pot fi surs de aciune pentru sistemul proiectat. n unele cazuri poate fi reprezentat cu o clas cu stereotipul actor. * Substantivele care sunt plasate ntre ghilimele __ sau __ n UML se numesc stereotipuri. Interfaa <<Interfaa>> INume

Cercule mic. Numele: I+Nume. Interfaa specific parametrii modelului care sunt vizibili dinafara sistemului fr de a ne interesa structura lui intern. Pentru DCU interfaa definete o totalitate de operaii care asigur serviciile necesare sau funcionalitate pentru careva actori. Interfaa nu poate conine nici atribute, nici stri, nici asocieri dirijate. Ele conin doar operaii fr indicarea specificaiilor de realizare a lor. Cu alte cuvinte interfaa reprezint cu o clas abstract. Interfaa de asemenea poate fi reprezentat ca clas cu stereotipul interface. Se utilizeaz n 2 cazuri: 1. IFormComand procurare produs. Fig

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

2. IDateClient Identificarea clientului. Fig

Colaborare Vezi entitatea de structur

Relaii n diagrama cazului de utilizare


1. Un anumit actor poate colabora cu mai multe cazuri de utilizare, n acest caz actorul nu face altceva dect se adreseaz la careva servicii ale sistemului dat. La rndul su un caz de utilizare poate colabora cu mai muli actori(ofer serviciile sale). 2. * Dou cazuri de utilizare definite pentru aceeai entitate nu poate colabora ntre ele(nu poate fi relaii de asociere). Fiecare din ele au o variant proprie determinat pentru o anumit entitate. n diagrama caz de utilizare sunt 4 relaii de baz: a) Asocierea. b) Extinderea. c) Generalizarea. d) Includerea. I. Asocierea.

Pentru diagrama caz de utilizare relaia de asociere specific rolurile unui actor pentru situaii concrete. Fig.1. Dac la relaii de asociere nu este indicat multitudinea, implicit este 1 (unu). II. Extinderea.

Relaia de extindere definete interconexiunea a unui caz de utilizare cu caz de utilizare general, proprietile crora sunt definite n baza modelului de uniune a exemplarelor date(unde se intersecteaz). n meta-modelul UML relaia de extindere este direct i indic care condiii pot fi utilizate pentru a extinde caz de utilizare general. Relaiile de extinderea i include nu sunt altceva dect nite stereotipuri a relaiilor de independen. Fig.2 III. Generalizarea.

Relaiile de generalizare sunt pentru indicarea faptului c un caz de utilizare:

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

A Poate fi generalizat un caz de utilizare. n urma cruia A va deveni caz special B, sau cu alte cuvinte B este printe pentru A. Fig.3 IV. Includerea.

Relaia de includere care indic comportamentul stabilit pentru un caz de utilizare care este inclus compus n alt caz de utilizare. Fig.4 Trace este un include istoric (ceea ce a fost fcut deja). Fig.5 Diagrama de interaciune.

Diagrama de secven.
n limbajul UML colaborarea ntre obiecte se cerceteaz n aspectul informativ al comunicaiilor lor, cu alte cuvinte obiectele ce interacioneaz nu fac altceva dect un simplu schimb de mesaje dintre ele. n UML sunt 2 tipuri de diagrame de interaciune: 1. Obiectele colaboreaz ntre ele n timp i atunci pentru prezentarea particularitilor temporale se utilizeaz diagrama de secven. 2. Pot fi cercetate particularitile structurale ale colaborrilor ntre obiecte (schimbul de mesaje n spaiu). Elementul principal din diagrama de secven este obiectul. Obiectul este o instan a clasei. Obiectul n diagrama de interaciune se reprezint n form de dreptunghi. Fig.6. Numele obiectul poate conine: nume obiect =O, tip clas=C, tip pachet=P (N_o:T_c::T_p) Nume obiect nu poate fi fr nume clas. 1) 2) 3) 4) 5) 6) O:C::P O:C O: - obiect orfan (cnd : sunt puse dar nu este specificat clasa) O :C::P obiect anonim :C obiect anonim al clasei C

Fiecare obiect are o linie vertical punctat, linia dat indic timpul de via a obiectului n sistemul dat. Elementul X semnific c obiectul a fost distrus. Focus control timpul cnd obiectul este activ. Obiect n diagrama de secven apar n dependen de interaciune. Rational Rose 1. 2. 3. 4. 5. 6. Relaie general. R. Sinhron. R. Asinhron. R. Timeout R. Balking. R. Chemarea procedurii 8

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale 7. R. Return. Enterprise Arhitect I. II. III. Sinhron Asinhron Return.

Profesor: Radu Melnic

Stereotipuri a) b) c) d) e) Call invoc o operaie sau procedur obiectului destinatat. Return returneaz valoarea operaiei executate obiectului apelant. Create creeaz un anumit obiect pentru careva interaciune. Destroy distruge obiectul pentru eliberarea memorie. Send expedierea unui semnal (mesaj).

Rational Rose utilizeaz: 1. 2. 3. 4. 5. 6. 7. Utilizeaz: a,b,c,d,e. Utilizeaz: a,b,c,d,e. Utilizeaz: a,b,c,d,e. Utilizeaz: a,b,d,e. Utilizeaz: a,b,d,e. Utilizeaz: b,c,d. Utilizeaz: a,d,e.

Enterprise Arhitect utilizeaz: I. II. III. Utilizeaz: b,c,d. Utilizeaz: a,b. Utilizeaz: a,d,e.

n limbajul UML informaia care este scris n acolade {} se numete restricie de timp. End Diagrama de secven.

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

client

card reader accepta card

ATM ecran

cont

emitator bani

citeste nr card initializare ecran deschide cont cere PIN introduce PIN cere tranzactia selectare tranzactie cere suma introduce cantitatea decontare verificar bani extrage distribuie cash distribuie cec scoatere card verifica PIN

Fig.1.5. Diagrama de secven

Diagrama de colaborare
Particularitatea principal const n reprezentarea grafic nu numai a interaciunii dintre obiecte ci i relaiile structurale dintre obiecte. Spre deosebire de diagrama de secven n diagrama de colaborare se reprezint relaiile ntre obiecte care au o oarecare semnificaie n timpul colaborrii. n diagrama de colaborare nu se indic timpul interaciunii obiectelor. ns n diagrama de colaborare exist posibilitatea de a numerota mesajele (interaciunile), ceea ce ne permite de a vedea schimbul de mesaje n timp. Ca i n diagrama de secven, principalul element este obiectul (instana unei clase). Numele obiectului poate fi: Nume_ob/Rol_clas:Tip_clas::Tip_pachet. Exemple: O/R:C::P Obiectul O cu rolul R, clasa C din pachetul P /R:C::P Obiectul anonim O cu rolul R, clasa C din pachetul P :C::P :C O :C::P O :C O O : - Obiect orfan /R:C /R O/R 10

Cules de: Bnzari Marin & Jaloba Victor

Analiza i Modelarea Sistemelor Informaionale O/R:

Profesor: Radu Melnic

Multiobiect
Multiobiect reprezint o mulime de obiecte la una din terminaiile asocierii. n diagrama de colaborare entitatea multiobiect se utilizeaz pentru a reprezenta operaiile i semnalele care sunt adresate ctre multitudini sau totaliti de obiecte. Multiobiectul se reprezint grafic printr-un dreptunghi n alt dreptunghi (Fig 1). *Relaia dintre multiobiect i obiectul care face parte din el compoziia. (Fig. 2) Asociere (Fig 3)

Obiecte active i pasive


n UML obiectele se mpart n active i pasive. Obiectele pasive folosesc numai datele care sunt transmise i nu pot avea activitate de control. ns ele pot transmite semnale pe parcursul timpului de realizare a cererii. Obiect activ are un flux de control propriu i poate iniializa activitate de control. (Fig 4)

Obiect compus
Obiectul compus se mai numete obiect container. El este destinat pentru reprezentarea obiectului care are structur proprie i flux intern de control. Obiectul compus este exemplarul unei clase compuse care este legat cu prile sale componente prin relaia de agregare sau compoziie. Obiectul compus se reprezint prin dreptunghi din 2 componente: numele obiectului i numele obiectelor interne (Fig 5).

Stereotipuri de legturi
association (FIG 6) asociere, stereotip implicit parameter parametrul metodei. Obiectul crui i s-a transmis stereotipul parameter poate fi doar parametru al unei metode local (Fig 7) variabil local a metodei. Nivelul de vizibilitate a variabilei locale e limitat pn la obiectul vecin. global variabil global a metodei. Vizibil pentru toate elementele diagramei de colaborare. self (Fig 8) relaie recursiv.

Elementul colaborare
Noiunea de colaborare nseamn o mulime de obiecte care interacioneaz n context comun. Scopul colaborrii const n specificarea particularitilor realizrii celor mai semnificative operaii n sistem.

Niveluri
Diagrama de colaborare poate fi reprezentat n 2 nivele: 1. Nivel de specificare se reprezint rolul clasificatoarelor i rolurile asocierilor n colaborarea dat 2. Nivel de exemplu diagrama reprezint obiectele i legturile dintre ele cu mesaje Diagrama de colaborare de nivel de specificare reprezint rolurile elementelor (nivel de clase) ce particip la colaborare. La nivel de exemple sunt reprezentate doar obiectele care au legtur cu realizarea operaiilor. (Fig 9) nivel de specificare Cules de: Bnzari Marin & Jaloba Victor 11

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

(Fig 10) Colaborare nivel de exemplu (Fig 11) Diagrama claselor

Diagrama claselor
Diagrama claselor se utilizeaz pentru reprezentarea structurii statice ale sistemului n terminologia POO. n diagrama claselor pot fi reflectate diferite legturi dintre entiti (clasa, interfaa, pachetul, obiectul) i poate descrie structura lor intern. Bineneles c pot fi utilizate toate 4 tipuri de relaii UML. n diagrama de clase nu poate fi reprezentat aspectul temporar al funcionrii sistemului. Diagrama de clase nu e altceva dect dezvoltarea de mai apoi a diagramei de structur. Diagrama claselor se reprezint ca orice alt diagram sub form de graf. Vrfurile sunt entitile, muchiile relaiile.

Clasa
Clasa dreptunghi cu 3 pri. Prima numele, a doua atributul (Nivel de acces Nume atribut [multiplicitate] : Tip valoare = Valoare iniial sau {constant}), a treia metodele (Nivel de acces Nume metod (lista parametrilor) : Tip valoare ntoars).

Relaii
Sunt 4 tipuri de relaii n diagrama claselor: Dependena relaia dintre 2 entiti (clase), una independent (cu sgeata spre ea) i cealalt dependent. Stereotipuri: o access - servete ca indicator de accesibilitate pentru atributele i operaiile clasei surs pentru clasa client o bind - clasa client (dependent) poate utiliza abloane pentru urmtoarea parametrizare a sa o derive - atributele clasei client pot fi calculate dup atributele clasei surs o import - atribute i metode publice ale clase surs pot fi considerate ca atribute i metode ale clasei client o refine - indic c clasa client servete ca precizie pentru clasa surs (ca caracter istoric) Asocierea legtur semantic dintre 2 clase. Rol = nivel acces (+, -, #) + nume rol. Triunghi haurat indic cine are primul acces la obiect. Multitudini (0, 0..1, 1, 0..*, 1..*, *, 7, 2..5) standard e 1. Generalizarea relaie semantic dintre elementul generalizat Linie nentrerupt cu triunghi nehaurat. Restriciile ntre paranteze figurate: o {complete} n diagram sunt reprezentate toate clasele descendente, iar altele nu mai pot exista o {incomplete} nu sunt reprezentate toate clasele descendente o {disjoin} clasele descendente nu pot conine obiecte care concomitent sunt exemplare a 2 sau mai multor clase o {overlapping} motenire multipl (figura motenete clasa punct i clasa linie ) Realizarea clasa realizeaz interfaa (linie ntrerupt cu triunghi la interfa

Interfaa (vezi ) Obiectul (vezi ) Figur: Diagrama de clase Universitate

Cules de: Bnzari Marin & Jaloba Victor

12

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Diagrama de stare
Pentru modelarea comportamentului la nivel logic n UML pot fi folosite urmtoarele diagrame: Stare Activiti Secven Colaborare

Spre deosebire de alte diagrame, diagrama de stare descrie procesul de modificare a strilor pentru o anumit clas (pentru obiectul, exemplarul unei clase), cu alte cuvinte reprezint procesul de modificare a strilor a unui anumit obiect. Schimbarea strii obiectului poate fi provocat de alte obiecte din exterior sau din interior. Diagrama dat se utilizeaz pentru descrierea consecutivitii de stri posibile i treceri care mpreun caracterizeaz comportamentul obiectului pe perioada ciclului su de via.

Automat
Automatul n UML reprezint o formalitate pentru modelarea comportamentului modelului a unui sistem ntreg. Automatul este un pachet n care putem defini o mulime de definiii care sunt necesare pentru a reprezenta comportamentul entitii modelate. Automatul diagram de stare.

Starea
Noiune de baz care intr n formalismul automatul sunt strile i tranziiile (trecere). Diferena principal dintre stare i tranziie const n: Durata aflrii sistemului n stare depete cu mult timpul care este destinat trecerii. Se presupune c timpul tranziiei este 0 i se trece dintr-o stare n alta momentan

n limbajul UML sub-stare se subnelege o meta-clas abstract care se utilizeaz pentru modelarea situaiilor concrete. Pe parcursul cruia sunt prezente careva aciuni, din cadrul clasei ct i n afar clasei. Starea poate fi n form de valori concrete, a atributului sau a obiectului clasei, n cazul acestuia modificarea a unor valori va duce spre modificarea strii obiectului. E de menionat c nu fiecare atribut a clasei poate s caracterizeze starea obiectului. Starea n UML se reprezint grafic n form de dreptunghi cu colurile rotunjite. Nume Exist aciuni interzise n afar de nume starea poate avea i aciuni interne. Fig.1.

Numele strii
Numele strii nu este altceva dect un text care dezvluie sensul strii date de regul numele se scrie cu majuscul, verbul la timpul prezent sau participiu. n unele cazuri numele strii poate lipsi n acest caz starea este anonim. Dac n diagram sunt mai multe stri anonime trebuie s redefinim ntre ele. n diagrama de stri putem utiliza i pseudo stri. Pseudo stri sunt de 2 tipuri: 1. Pseudo stare iniial. 2. Pseudo stare final. Cules de: Bnzari Marin & Jaloba Victor 13

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Ambele sunt cazuri particulare a ale strii care nu conin nici o aciune intern. Pseudo stare iniial se utilizeaz pentru a ne reprezenta momentul de la care ncepe modificarea strilor obiectului. Pseudo starea final ne reprezint sfritul de reprezentare a strii sau sfritul ciclului de via a obiectului. Fig.2. n diagrama de stare poate fi doar o singur pseudo stare iniial i din ea iese doar o singur tranziie. Iar pseudo stri finale pot fi 1,2 i mai multe n dependen de caz i n ea doar intr. n cazul cnd avem mai multe pseudo stri finale este obligatoriu de a le diferenia prin atribuirea diferitor nume.

Tranziia
Trecerea dintr-o stare n alta. Tranziia reprezint o relaie dintre 2 stri consecutive ceea ce ne indic trecerea de la o stare la alta. Ea poate fi de 2 tipuri: 1. Trigher . 2. Netrigher Dac trecerea nu are suplimentar careva aliniat de text (de regul eveniment) atunci astfel de tranziie se numete netrigher, n rest trigher. Signatura_evenimentului[condiia_gard]/aciunea Signatura_evenimentului ---Condiia_gard - se verific dac este true sau false. n cazul cnd sunt mai multe condiii gard se despart prin ; (punct i virgul).

Starea compus
Starea compus - este starea compus care este alctuit din 2 sau mai multe stri depuse. Strile depuse vor fi sub-stri pentru starea iniial. Relaia dintre sub-stri i starea iniial va fi compoziia. Fig.3.

Sub-stri disjuncte
Sub-stri disjuncte se utilizeaz pentru modelarea comportamentul obiectului n timpul cruia obiectul se poate afla doar ntr-o singur sub-stare. Fig.4. Sub-stare compus cu stri concurente.

Sub-stri concurente
Sub-stri concurente pot specifica 2 sau mai multe sub-automate care pot executa n paralel sau paralel. Fiecare sub-automat are regiunea sa n starea compus. Sub-automatul poate fi att stare compus cu sub-stri depuse ct i starea compus cu stri disjuncte. Fig.5.

Exemple diagrama de stare


Fig. 6

Cules de: Bnzari Marin & Jaloba Victor

14

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Diagrama de activiti
Pentru modelarea proceselor de executare a operaiilor n limbajul UML se utilizeaz diagrama de activiti. Diagrama de activiti poate fi numit ca un caz particular diagrama de stri (are aceleai tipuri de activiti i elemente). Fiecare stare de activitate corespunde unei operaii elementare i ca i n cazul diagramei de stri trece n diagrama de activitate dup executarea diagramei de stri. Sensul principal al acestei diagrame const n vizualizarea particularitilor , operaiilor al unor clase pentru a reprezenta algoritmul de execuie. Diagrama de activitate - este un caz particular a strii ns nu poate avea tranziii interne. Grafic se reprezint printr-un dreptunghi unde are prin pri 2 bucle. Nume a:=b+c Uneori este necesar de a meniona c starea de activitate este o stare compus. Diagrama de tranziie - n comparaie cu diagrama de stri toate tranziiile sunt netrigher. Fig.7 Dintr-o diagram de stare poate fi doar o intrare/ieire. n diagrama de activiti este o pseudo-stare iniial i o pseudo-stare final. Fig.8 Cel mai mare neajuns al schemelor bloc const n aceea c nu putem reprezenta stri paralele. n UML exist elemente speciale pentru reprezentarea calculelor paralele, acest simbol se reprezint prin linie dreapt, vertical sau orizontal, analogic notaii unei tranziii n formalismul reelelor Petre. Sunt 2 entiti fork i join. 1. Fork divizarea n mai multe fluxuri paralele, deci are 1 intrare i 2 ieiri. 2. Join unirea fluxelor paralele, mai multe intrri i 1 ieire. Fig.9 . Fig.10

Partiia
Diagrama de activiti poate fi folosit nu numai pentru specificarea algoritmilor de calcul sau a fluxului de control a sistemelor de programare, dar i n modelarea business proceselor. Activitatea oricrei companii reprezint o totalitate de aciuni independente care sunt ndreptate spre un anumit rezultat. Modelarea business proceselor la se utilizeaz pentru reprezentarea subdivizrii. Subdivizarea sunt responsabile de careva aciuni iar business procesele reprezint trecerea de la o subdiviziune la alta. Pentru modelarea a tipuri de particulariti n limbajul UML se utilizeaz partiiile. Partiiile sunt divizate prin linii verticale nentrerupte. 2(dou) linii verticale reprezint partiia sau subdiviziunea. Linia partiiilor pot fi ntretiate doar de tranziie. Cules de: Bnzari Marin & Jaloba Victor 15

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Obiectul
Obiectul n afar de nume poate conine i careva caracteristici (se scriu dup numele obiectului n paranteze ptrate []). ntre obiect i oriicare element dintre diagram poate fi utilizat relaia de dependen (linie nentrerupt cu sgeat). Obiectele pot fi plasate ct i n cadrul partiiei ct i pe linia partiie.

Diagrama componente
Toate diagramele analizate pn acum se refereau la aspectele conceptuale de proiectare a unui model de sistem i se refereau la nivel logic de reprezentare. Specificul reprezentrii logice const n faptul c el utilizeaz noiuni ce nu au personificare personal(material). Diferite elemente are reprezentri logice (clase, obiecte, mesaje, relaii, etc) nu exist n mod material sau fizic, ele reflect doar nelegerea noastr despre sistemul fizic. Destinaia principal a reprezentrii logice const n analiza relaiilor structurale i funcionale ntre elementele unui model. Pentru reprezentarea elementelor la nivel fizic este necesar de a transforma toate entitile logice n entiti materiale. n limbajul UML pentru reprezentarea nivelului fizic se utilizeaz diagrama de componente i de amplasare. Diagrama de componente permite determinarea arhitecturii sistemului elaborat prin determinarea dependenilor ntre componente care pot fi (fiiere text, fiiere cu cod surs, biblioteci, fiiere dinamice, etc. ). n majoritatea cazurilor componenta corespund unui anumit fiier. Diagrama de componente se utilizeaz pentru urmtoarele scopuri: 1. 2. 3. 4. Vizualizarea structurii comune a codului surs a careva aplicaii. Specificarea variabilei executabile a careva aplicaii. Reutilizarea crorva fragmente din cod surs. Reprezentarea conceptual i fizic a sistemelor de baze de date.

Elementele principale a diagramei de componente sunt: 1. Componenta 2. Interfaa (entiti) 3. Dependena (relaiile)

Componenta
Pentru reprezentarea entitilor fizice n limbajul UML se utilizeaz componenta, ea poate realiza un set de interfee i desemneaz elementele reprezentrii fizice a unui model. Fig.1 & Fig.2 Componentele pot fi reprezentate la nivel de tip sau la nivel de exemplar. La nivel de tip: este fig.1 i fig. 2 La nivel de exemplar se noteaz numele component: numele exemplar Fig.3 Dac este exemplar trebuie s aib linia de jos.

Tipuri de componente
Fiiere cu extensia *.dll Fig.4 Fig.5 Cules de: Bnzari Marin & Jaloba Victor 16

Analiza i Modelarea Sistemelor Informaionale

Profesor: Radu Melnic

Aceste notaii adugtoare nu sunt considerate ca elemente de baz a limbajului UML ns utilizarea lor uureaz nelegerea diagramelor. n diagrama de componente sunt specificate 3 feluri de componente: 1. Componente de regrupare - care specific executarea de ctre sistem a fuciilor sale, aa componente pot fi: biblioteci dinamice (*.dll), web pagini (html, xml, php), fiierele help (*.hlp). 2. Produse de lucru pentru limbajul c++ aceste sunt fiierele cu extensia *.h i *.cpp. 3. Componente de executare aceste elemente n unele cazuri mai sunt numite artefacte (n aa fel se subliniaz coninutul lor informaional). Un alt mod de specificare a tipurilor de componente este indicarea stereotipurilor componentei care de regul este plasat deasupra numelui. Stereotipuri: 1. Library se refer la primul tip de componente (de regrupare) i de obicei indic sau reprezint bibliotecile dinamice sau statice. 2. Table se refer la primul tip de componente (de regrupare) care reprezint tabele bazei de date. 3. File se refer la al doilea tip de componente care de regul reprezint fiierele cu texturl iniial a programului. 4. Document - se refer la al doilea tip de componente produs de lucru i reprezint un document. 5. Executable - se refer la al treilea tip de componente.

Interfaa
Vezi entitatea de structur Fig.7

Dependena
Este considerat relaia principal

Cules de: Bnzari Marin & Jaloba Victor

17