Sunteți pe pagina 1din 5

Ingineria Programarii 2010

Anca Ion

Diagrama de clase (Class Diagram)


Diagrama de clase (1)
Modeleaz vocabularul sistemului ce trebuie dezvoltat
Surprinde conexiunile semantice sau interaciunile care se stabilesc ntre
elementele componente
Folosit pentru a modela structura unui program
Poate conine
Clase/Interfee
Obiecte
Legaturi
- Asociere
- Agregare
- Generalizare
- Dependen
- Realizare
1. Clase
Modeleaz vocabularul = identific conceptele pe care clientul sau programatorul
le folosete pentru a descrie soluia problemei
Pot fi:
- Abstracii care fac parte din domeniul problemei
- Clase necesare la momentul implementrii
Elementele unei clase:
- Nume: identific o clas
- Atribute: proprieti ale clasei
- Metode: implementarea unui serviciu care poate fi cerut oricrei instane a
clasei.
Clasa: Notaie grafic

Ingineria Programarii 2010

2. Obiect
Reprezint o instan a unei clase
Are identitate i valori ale atributelor
Notaie grafic:

Interfa
Specific o mulime de operaii, dar nu menioneaz structura intern sau
implementarea acestora
Interfaa poate fi implementat de mai multe clase
Notaie grafic:

Clasa parametrizat (template)


Este o clasa care are unul sau mai muli parametri formali
Definete o familie de clase (dnd valori parametrilor formali)
De obicei parametrii reprezint tipuri ale atributelor
Notaie grafica:

Anca Ion

Ingineria Programarii 2010

Anca Ion

3. Legaturi
ntre clase
- A. Generalizare
- B. Dependen
- C. Realizare
ntre instane ale claselor
- D. Asociere
- E. Agregare
A. Generalizare
Modeleaz conceptul de motenire ntre clase
Mai poart denumirea de relaie de tip is a (este un/este o)
Generalizare: Notaie grafic

B.

Dependen
Modeleaz interdependene ce apar la implementare.
Indic o relaie semantic ntre dou elemente ale modelului.
Se folosete cnd o schimbare n elementul destinaie poate atrage dup sine o
schimbare n elementul surs.

Ingineria Programarii 2010

Anca Ion

Dependenta: Notaie grafic

C. Realizare
Se folosete atunci cnd o clas implementeaz (realizeaz) o interfa
Notaie grafic:

D. Asociere
Exprim o conexiune semantic sau o interaciune ntre obiecte aparinnd
diferitelor clase.
Pe msur ce sistemul evolueaz noi legturi ntre obiecte pot fi create, sau
legturi existente pot fi distruse.
Asociere interacioneaz cu obiectele sale prin intermediul capetelor de asociere.

Elemente:
- Nume: descrie relaia
- Capete de asociere

Nume = rolul jucat de obiect n relaie


Multiplicitate = cte instane ale unei clase corespund unei singure
instane ale celeilalte clase.

Asociere: Notaie grafic

Ingineria Programarii 2010

Anca Ion

Agregare
Este un caz particular al relaiei de asociere (has a)
Modeleaz o relaie de tip parte-ntreg
Poate avea toate elementele unei relaii de asociere, ns n general se specific
numai multiplicitatea
Se folosete pentru a modela situaiile ntre care un obiect este format din mai
multe componente.
Agregare: Notaie grafic

Bibliografie:
http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/UML_tutorial/class.htm