17.04.2013 Views

2. Introducere in limbajul UML - Discipline

2. Introducere in limbajul UML - Discipline

2. Introducere in limbajul UML - Discipline

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

UPB - Facultatea ETTI - Curs ISC - an IV – Specializarea RST<br />

2010 - 2011<br />

Ing<strong>in</strong>erie Software pentru Comunicatii<br />

(ISC / RST)<br />

Titular curs: Eduard-Cristian Popovici<br />

Suport curs: http://discipl<strong>in</strong>e.elcom.pub.ro/isc/<br />

Moodle: http://electronica.curs.ncit.pub.ro/<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 1


Cont<strong>in</strong>ut curs<br />

1. <strong>Introducere</strong> <strong>in</strong> <strong>in</strong>g<strong>in</strong>eria software<br />

Structura cursului<br />

1.1. Necesitatea unei abordari sistematice a dezvoltarii software<br />

1.<strong>2.</strong> Abordari si metodologii larg utilizate <strong>in</strong> <strong>in</strong>g<strong>in</strong>eria software<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

<strong>2.</strong>1. Def<strong>in</strong>irea, rolul si istoricul <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

<strong>2.</strong><strong>2.</strong> Tipuri de diagrame <strong>UML</strong>. Organizarea ierarhica a diagramelor<br />

3. Diagrame <strong>UML</strong> statice<br />

3.1. Diagrame <strong>UML</strong> de clase<br />

3.<strong>2.</strong> Diagrame <strong>UML</strong> de obiecte<br />

3.3. Diagrame <strong>UML</strong> de pachete<br />

3.4. Diagrame <strong>UML</strong> de componente<br />

3.5. Diagrame <strong>UML</strong> de structuri compozite<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 2


Cont<strong>in</strong>ut curs<br />

4. Diagrame <strong>UML</strong> d<strong>in</strong>amice<br />

Structura cursului<br />

4.1. Diagramele <strong>UML</strong> de caz de utilizare<br />

4.<strong>2.</strong> Diagrame <strong>UML</strong> de comunicatie si de robustete<br />

4.3. Diagrame <strong>UML</strong> de secventa si de sumar al <strong>in</strong>teractiunilor<br />

4.4. Diagrame <strong>UML</strong> de mas<strong>in</strong>i de stari<br />

4.5. Diagrame <strong>UML</strong> de activitati<br />

4.6. Diagrame <strong>UML</strong> de timp<br />

5. <strong>Introducere</strong> <strong>in</strong> procesul de dezvoltare Rational unificat (RUP)<br />

5.1. Organizarea iterativa a proiectelor<br />

5.<strong>2.</strong> Fazele si activitatile procesului RUP<br />

6. <strong>Introducere</strong> <strong>in</strong> managementul si organizarea proceselor de dezvoltare<br />

7. Elemente de reutilizabilitate a software-ului. Pattern-uri de proiectare<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 3


Structura cursului<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

<strong>2.</strong>1. Def<strong>in</strong>irea, rolul, istoricul <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

<strong>2.</strong><strong>2.</strong> Tipuri de diagrame <strong>UML</strong>. Organizarea ierarhica a diagramelor<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 4


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Def<strong>in</strong>irea, rolul si istoricul <strong>limbajul</strong>ui de<br />

modelare (vizuala) unificat<br />

(<strong>UML</strong>)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 5


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 6


Limbajul de modelare unificat (<strong>UML</strong>)<br />

<strong>UML</strong> (Unified Model<strong>in</strong>g Language):<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

- limbaj de modelare standardizat de uz general <strong>in</strong> <strong>in</strong>g<strong>in</strong>eria software<br />

- produsul fuzionarii notatiilor<br />

- Metodei Booch (creata de Grady Booch),<br />

- OMT (Object Model<strong>in</strong>g Techniques),<br />

- OOSE (Object Oriented Software Eng<strong>in</strong>eer<strong>in</strong>g), si a altora<br />

- standard OMG (Object Management Group)<br />

- <strong>in</strong>clude un set de de notatii grafice<br />

- pentru crearea unor modele vizuale ale sistemelor software<br />

- pr<strong>in</strong> descrierea artefactelor dezvoltarii acestora<br />

- <strong>in</strong>dependent de procesul de dezvoltare folosit<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 7


Limbajul de modelare unificat (<strong>UML</strong>)<br />

<strong>UML</strong> (Unified Model<strong>in</strong>g Language):<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

- a fost gândit pentru a fi <strong>in</strong>tuitiv, omogen, coerent<br />

- nu are o notatie ferma, el fi<strong>in</strong>d<br />

- generic,<br />

- extensibil,<br />

- configurabil<br />

- majoritatea diagramelor se prez<strong>in</strong>ta<br />

- sub forma unor grafuri, compuse d<strong>in</strong><br />

- elemente (noduri) si<br />

- arce (legaturi <strong>in</strong>tre noduri)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 8


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Orig<strong>in</strong>ea <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

<strong>UML</strong> este produsul fuzionarii notatiilor Booch, OMT (Object Model<strong>in</strong>g<br />

Techniques), OOSE (Object Oriented Software Eng<strong>in</strong>eer<strong>in</strong>g), si a altora<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 9


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Orig<strong>in</strong>ea <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

Notatiile Booch, OMT, si OOSE au fost create de Grady Booch, James<br />

Rumbaugh si respectiv Ivar Jacobson (the three amigos), pe cand erau colegi<br />

la Rational Software (acum divizie software a IBM)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 10


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Istoricul <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 11


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Istoricul <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 12


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Tipuri de diagrame <strong>UML</strong>. Organizarea<br />

ierarhica a diagramelor<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 13


<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Arhitectura <strong>in</strong> 4 niveluri a <strong>limbajul</strong>ui de modelare unificat (<strong>UML</strong>)<br />

Nivelul MOF (al<br />

conceptelor)<br />

Nivelul<br />

metamodelului<br />

(al <strong>limbajul</strong>ui<br />

<strong>UML</strong>)<br />

Nivelul<br />

modelului (al<br />

diagramelor)<br />

Nivelul de<br />

executie (al<br />

<strong>in</strong>stantelor)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 14


Arhitectura <strong>in</strong> 4<br />

niveluri a<br />

<strong>limbajul</strong>ui de<br />

modelare<br />

unificat (<strong>UML</strong>)<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 15


Categorii de<br />

diagrame<br />

<strong>UML</strong> 2<br />

(si exemplu<br />

de diagrama<br />

de pachete)<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 16


Diagramele <strong>UML</strong> structurale<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 17


Diagramele <strong>UML</strong> structurale<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Diagramele <strong>UML</strong> 2 structurale si rolurile lor<br />

diagramele de clase<br />

- prez<strong>in</strong>ta structura statica în termeni de<br />

- clase si<br />

- relatii <strong>in</strong>tre clase de obiecte (asocieri, agregari, compuneri, ext<strong>in</strong>deri<br />

pr<strong>in</strong> mostenire, implementari de <strong>in</strong>terfete)<br />

diagramele de obiecte<br />

- prez<strong>in</strong>ta obiectele si legaturile lor<br />

- fi<strong>in</strong>d niste diagrame de comunicatie simplificate, fara reprezentarea<br />

mesajelor trimise între obiecte<br />

diagramele de pachete (packages)<br />

- arata felul <strong>in</strong> care clasele sau componentele sunt grupate<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 18


Diagramele <strong>UML</strong> structurale<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Diagramele <strong>UML</strong> 2 structurale si rolurile lor<br />

diagramele de componente<br />

- prez<strong>in</strong>ta componentele reutilizabile si relatiile d<strong>in</strong>tre ele <strong>in</strong> cadrul<br />

sistemului software<br />

- <strong>in</strong>sistand pe <strong>in</strong>terfetele oferite si necesare<br />

diagramele de structuri composite (composite structure)<br />

- prez<strong>in</strong>ta felul <strong>in</strong> care structurile sunt agregate<br />

diagramele de amplasare (deployment)<br />

- prez<strong>in</strong>ta<br />

- componentele<br />

- manifestarile componentelor sub forma artefactelor si<br />

- amplasarea artefactelor pe suportul hardware<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 19


Diagramele <strong>UML</strong> d<strong>in</strong>amice<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 20


Diagramele <strong>UML</strong> d<strong>in</strong>amice<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Diagramele <strong>UML</strong> 2 d<strong>in</strong>amice si rolurile lor<br />

diagramele cazurilor de utilizare (use cases)<br />

- prez<strong>in</strong>ta functiile sistemului d<strong>in</strong> punct de vedere al utilizatorului, adica<br />

- modurile <strong>in</strong> care sistemul este utilizat<br />

diagramele de activitati<br />

- asemanatoare organigramelor (Flow Charts)<br />

- reprez<strong>in</strong>ta comportamentul unei operatii în termeni de actiuni<br />

- sub forma fluxurilor de activitati si de obiecte<br />

diagramele mas<strong>in</strong>i de stari (foste de stari-tranzitii)<br />

- numite si diagrame FSM (F<strong>in</strong>ite State Mach<strong>in</strong>es), automate, State Charts,<br />

etc.<br />

- prez<strong>in</strong>ta comportamentul unei clase în termeni de stari si de tranzitii<br />

<strong>in</strong>tre stari<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 21


Diagramele <strong>UML</strong> de <strong>in</strong>teractiune<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 22


Diagramele <strong>UML</strong> de <strong>in</strong>teractiune<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Diagramele <strong>UML</strong> 2 de <strong>in</strong>teractiune si rolurile lor<br />

diagramele de secventa, numite si diagrame MSC (Message Sequence<br />

Charts)<br />

- prez<strong>in</strong>ta temporal <strong>in</strong>teractiunile <strong>in</strong>tre obiecte<br />

diagramele de comunicatie (foste de colaborare <strong>in</strong> <strong>UML</strong> 1)<br />

- alternative ale diagramelor de secventa<br />

- reprezentari spatiale ale obiectelor, legaturilor si <strong>in</strong>teractiunilor<br />

diagramele de tim<strong>in</strong>g (s<strong>in</strong>cronizare)<br />

- reprez<strong>in</strong>ta constrangerile temporale ale mesajelor si starilor obiectelor<br />

(un fel de diagrame MSC rotite cu 90º)<br />

diagramele de ansamblu al <strong>in</strong>teractiunilor (Interaction overview)<br />

- arata pasii <strong>in</strong>dividuali ai unei activitati folos<strong>in</strong>d diagrame de<br />

secventa/comunicatie<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 23


Limbajul de modelare unificat (<strong>UML</strong>)<br />

<strong>2.</strong> <strong>Introducere</strong> <strong>in</strong> <strong>limbajul</strong> <strong>UML</strong><br />

Diagramele <strong>UML</strong> formeaza modele folosite <strong>in</strong> proceselor de productie a sistemelor<br />

software bazate Model Driven Architecture (MDA)<br />

exemplu de proportii ale codurilor generate automat d<strong>in</strong> diagrame <strong>UML</strong><br />

pentru subsistemele unei aplicatii create folos<strong>in</strong>d MDA<br />

UPB - ETTI - Curs ISC - an IV - Specializarea RST 07.03.2011 11:35 24

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!