uml 2 - udgima.udg.edu/~sellares/einf-es2/present1213/presentaciouml2.pdf · • unified modeling...

Post on 14-Jul-2020

5 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

UML 2

Jordi Coll CaballeroEnginyeria del Sofware II, EINF

1. Què és UML?2. UML 23. Diagrames de comportament4. Diagrames d’interacció5. Diagrames estructurals

Què és UML?

• Unified Modeling Language

• Llenguatge gràfic per especificar, visualitzar, construïr i documentar un sistema software OO.

• Desenvolupem models

• Creat per OMG (Object Management Group)

• Última revisió: UML 2

1. Què és UML?2. UML 23. Diagrames de comportament4. Diagrames d’interacció5. Diagrames estructurals

UML 2 (I)• Objectius:

• Llenguatge de modelat més extensible.• Validació i execució de models.

• Especificacions:

UML 2 (II)• La superestructura defineix els diagrames que

utilitzen els desenvolupadors

UML 2 (III)• La infraestructura defineix conceptes de més baix

nivell. Defineix UML en si. No és usada per els desenvolupadors de software.

• OCL (Object Constraint Language) defineix restriccions sobre elements del model (pre, post, invariants...)

• Intercanvi de diagrames (XMI): XMI (XML Metadata Exchange) facilita la portabilitat de models entre eines CASE diferents amb una mateixa representació.

1. Què és UML?2. UML 23. Diagrames de comportament4. Diagrames d’interacció5. Diagrames estructurals

Diagrames de comportament

• Diagrames de cas d’ús

• Diagrames d’activitat

• Diagrames d’estat

• Diagrames d’interacció

Diagrames de cas d’ús (I)• Interacció d’actors (usuaris, processos, subsistems...)

amb el sistema• Descriuen les funcionalitats del sistema• Se’n pot fer una especificació textual formal, amb les

fitxes de cas d’ús:

Diagrames de cas d’ús (II)• Representació

• Actors representats per ninots• Casos d’ús representats per el·lipses• Comunicacions representades per segments• Es pot posar una frontera (requadre) per separar actors i

casos d’us

• Relacions entre casos d’ús• Generalització• Inclusió• Extensió

Diagrames de cas d’ús (III)

Diagrames d’activitat• Representen processos de negoci a alt

nivell.• S’emmarquen dins de casos d’ús• Descriuen un ordre i dependències entre

les parts del procés• Representació:

• Inicien en un cercle ple, i acaben en dos cercles concèntrics (el del mig ple).

• Activitats amb cercles arrodonits• Les activitats es poden dividir en seccions o

carrers• Transicions amb branques excloents amb

rombe• Transicions amb fils paral·lels amb segments

perpendiculars

Diagrames d’estat• Representen el comportament d’un objecte o sistema,

com varia, i quins esdeveniments ho provoquen• Les transicions poden tenir una condició i una acció

([condició]/acció)

[potAnul·lar]/buscarNousUsuaris

1. Què és UML?2. UML 23. Diagrames de comportament4. Diagrames d’interacció5. Diagrames estructurals

Diagrames d’interacció

• Diagrames de seqüència

• Diagrames de comunicació

• Diagrames de revisió de la interacció

• Diagrames de temporització/sincronització

Classes d’anàlisi

• Classes d’entitats: objectes del món real

• Classes de control: direcció dels camins del cas d’ús

• Classes frontera: interacció amb usuaris

Diagrames de seqüència (I)• Descriuen enviament de missatges entre objectes o

elements.• Mostren una temporització• Es representen amb la notació d’altres diagrames

(objectes, actors..), i es disposen per columnes.

Diagrames de seqüència (II)• Poden usar requadres per estructures més complexes

(iteracions, condicions, referències, etc.)

Diagrames de comunicació• Antics diagrames de col·laboració• Semblants als diagrames de seqüència• Posen l'èmfasi en la identificació dels objectes que es

passen els missatges.

Diagrames de temporització• Comportament dels objectes durant un període de

temps concret.• Eix temporal horitzontal

Diagrames de revisió de la interacció• Visió general del flux de control de les interaccions.• Variant dels diagrames d’activitats, estesa a

interaccions.

1. Què és UML?2. UML 23. Diagrames de comportament4. Diagrames d’interacció5. Diagrames estructurals

Diagrames d’estructura• Diagrama de classes• Diagrama d’objectes• Diagrama de components• Diagrama de desplegament• Diagrama d’estructura de composició • Diagrama de paquets

Diagrames de classes (I)• Classes d’objectes que tindrà el software.• Relacions entre les classes.• Hi ha classes es poden instanciar, o bé classes

abstractes (nom cursiva) o interfícies (interface).

Diagrames de classes (II)• Visibilitat d’atributs i mètodes:

• Tipus de relacions:• Generalització/especificació• Associació• Agregació• Composició

• Multiplicitat d’associacions entre classes:

Diagrames de classes (III)

Diagrames de classes (IV)• Associacions qualificades: una associació binària pot

tenir qualificacions

• Classes associació: associacions que tenen el mateix comportament que una classe

Diagrames d’objectes• Diagrama d’instància de classes• Mostra relacions i estat de les instàncies

Diagrames de components• Component: part d’un sistema (llibreria, document,

base de dades)• Mostra relacions i dependències entre components.

Diagrames de desplegament• Mostren a on es desplegarà físicament el sistema.• Elements hardware

Diagrames d’estructura de composició• Entenem classificador com un element com pot ser una

classe, component o cas d’ús.• Representa l’estructura interna, i els punts d’interacció,

tan interns com externs.

Diagrames de paquets• Mostren dependències entre paquets.• Un paquet és una col·lecció d’elements del model (classes,

altres paquets, casos d’ús...)• Un paquet depèn d’un altre paquet si els canvis del primer

l’afecten.• Els paquets continguts a altres paquets veuen el contingut

del paquet contenidor.

Referències• Introducció a UML – Toni Sellarès:

http://ima.udg.edu/~sellares/ETIG-ES/index.html• http://www.omg.org/• http://www.tutorialspoint.com/uml/uml_2_overview.htm• http://www.epidataconsulting.com/tikiwiki/tiki-

read_article.php?articleId=15#El_Nuevo_Enfoque_del_UML_2.0

• http://www.agilemodeling.com/essays/umlDiagrams.htm• http://sourcemaking.com/uml/basic-principles-and-

background/uml2• http://www.visual-paradigm.com/VPGallery/diagrams/• http://www.drdobbs.com/web-development/whats-new-in-

uml-2/184415097• http://en.wikipedia.org/wiki

top related