UML Prezentare Generala
Download
Report
Transcript UML Prezentare Generala
Planificare
UML – Unified Modelling Language
Object Constraint Language
Design Paterns in C++/Java
Testare software (JUnit, CVS, etc.)
Modele de dezvoltare software
Introducere în UML
Introducere
Diagrame de cazuri de utilizare
Diagrame de clase
Diagrame de obiecte
Diagrame de secventa
Diagrame de colaborare
Diagrame de stare
Diagrame de activitate
Diagrame de dezvoltare
Introducere
•
Sistem informatic
1. Ansamblu de date,structuri,…
2. Tratarea datelor (achizitie,
memorare, transformare,
cercetare, prezentare,
comunicarea informatiilor )
3. Reguli de organizare
Validare
Specificatie
Schema
conceptuala
Corectare
4. Resurse umane
Schema
interna
Conceptie
Ce este un model ?
O notatie pentru a
reprezenta obiecte
ale lumii reale
Un formalism
Cum trebuie sa fie acest model ?
Sa amelioreze comunicatia
Sa partajeze informatia
Sa nu fie ambiguu
Sa fie simplu de pus în practica
Sa anticipeze problemele functionale si
tehnice
Sa propuna o viziune abstracta
UML un limbaj de modelare
Unified Modeling Language
+ OCL : Object Constraint Language
Un limbaj universal
a.Diagrama cazurilor de utilizare
Actorul
1.
2.
3.
O entitate externa sistemului
Un obiect care interactioneaza cu sistemul
O persoana, un obiect, un alt sistem
Cum se identifica actorii
Cine utilizeaza,instaleaza,porneste,opreste si mentine aplicatia
în uz ?
Cine ofera si/sau primeste informatii de la aplicatie ?
Ce alte sisteme utilizeaza serviciile propuse de aplicatie ?
Fiecare actor : o clasa
Sistemul trebuie sa aibe o interfata pentru fiecare
dintre actori
Cazul de utilizare
VERB
Cerinte din partea sistemului
Cum se identifica cazurile de utilizare
Ce asteapta fiecare actor în parte de la Aplicatie ?
Aplicatia înregistreaza date ? Ce actori le creeaza, le
consulta, le modifica sau le distrug ?
Actorii indica sistemului schimbari de stare ?
Exista evenimente pe care aplicatia trebuie sa le cunoasca ?
Care actori informeaza aplicatia si cum ?
Relatii între cazurile de utilizare
Relatia de incluziune
Identificare
student
<<include>>
Împrumutare
carte
<<include>>
Verificarea
penalitate
<<include>>
Furnizare
carte
Relatia de incluziune
Cazul de utilizare sursa contine si
comportamentul descris în cazul de
utilizare inclus
Relatia de extensie
Cazul de utilizare sursa este extins,
completat prin comportamentul descris
în cazul de utilizare extensie
Împrumut
carte
<<extend>>
Consultare
catalog
b.Diagrama de clase
Fereastra
Notatie fara detalii
Fereastra
marime : float
Notatie cu
detalii
visibilitate : boolean
x,y : integer
afisare()
Refresh()
Atribute
Visibilitate Nume_atribut [multiplicitate] : tip = valoare_initiala {proprietati}
+ : public
puncte[2..*]:punct
# : protected
string[2..*]:char
- : private
Atribute abstracte : nume
Atribute de clasa : nume
Atribut derivat: /nume
Metode
Visibilitate Nume_operatie (parametri): tip_returnat
{proprietati}
+ : public
# : protected
{constructor}
- : private
{cerere}
• Metode abstracte : nume {abstract}
•Operatii de clasa : nume
Asociatii între clase
rol
Comanda
compusa din
produs
comandat
Produs
Asociatie reflexiva
Persoana
Este casatorit
cu
Modelizarea unui antrenament
Echipa
Teren
Antrenament
Mostenire
Persoana
Muncitor
Secretar
c.Diagrama de obiecte
Obiect : instanta particulara a unei clase
Identitate proprie
Valori atribute proprii
Nume_obiect: Nume_clasa [stare]
Nume_atribut:tip=valoare
Exemple
Masina
Roata
Roata
Motor
Roata
Roata
d.Diagrama de secventa
e.Diagrama de stare
Stare
Ansamblu de valori ce implica acelasi
raspuns la aparitia unui eveniment
Starea unui obiect se datoreaza unui
eveniment
Stari particulare
Stare initiala
Stare finala
Exemplu
Factura neplatita
plata
Factura platita
f.Diagrama de activitate
Este o diagrama asemanatoare cu cea
de stare
Este organizata prin raportul
actiune/activitate
Reprezentarea fluxului de activitate
Este destinata pentru a reprezenta un
comportament intern
Exemplu
Va multumesc !