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 !