2. Introducere in limbajul UML - Discipline
2. Introducere in limbajul UML - Discipline
2. Introducere in limbajul UML - Discipline
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