201
UML2 : Les diagrammes Laurent Henocque http: //laurent . henocque .free. fr/ Enseignant Chercheur ESIL/INFO France http: //laurent . henocque .perso. esil . univmed . fr/ mis à jour en Novembre 2008

UML2 : Les diagrammes Laurent Henocque Enseignant Chercheur ESIL/INFO France

Embed Size (px)

Citation preview

Page 1: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML2 : Les diagrammes

Laurent Henocquehttp://laurent.henocque.free.fr/

Enseignant Chercheur ESIL/INFO Francehttp://laurent.henocque.perso.esil.univmed.fr/

mis à jour en Novembre 2008

Page 2: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Licence Creative Commons

Cette création est mise à disposition selon le Contrat Paternité-Partage des Conditions Initiales à l'Identique 2.0 France disponible en ligne

http://creativecommons.org/licenses/by-sa/2.0/fr/

ou par courrier postal à Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

Page 3: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Références Normatives

• L'infrastructure UML • http://www.omg.org/cgi-bin/doc?formal/05-07-05 • La superstructure UML • http://www.omg.org/cgi-bin/doc?formal/05-07-04 • OCL • http://www.omg.org/cgi-bin/doc?ptc/05-06-06

Page 4: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Autres références

• Ce support de cours s'appuie sur des exemples concrets mis à disposition librement sur internet par différentes sources– http://www.rational.com– http://www.visualuml.com– http://uml.free.fr– http://http://www.sparxsystems.com.au/

resources/uml2_tutorial/index.html

Page 5: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Objectifs

• Présenter les différents diagrammes UML2.0

Page 6: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Diagrammes de Classes

Page 7: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Préambule

• UML propose des artéfacts particuliers pour les diagrammes.

• Toutefois, ces propositions sont seulement suggérées, ne sont pas obligatoires, et ne font en aucun cas partie de la norme

• Un diagramme à la mode OOA (nuages) peut donc constituer un document UML valide, selon des conventions prédéfinies

Page 8: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Classes

• les diagrammes de classes, ou de structure, définissent les constructions élémentaires d'un modèle: types, classes, relations utiles pour le reste (pose des contraintes)

Page 9: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Elements graphiques des diagrammes statiques

Page 10: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 11: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples de Classes

Page 12: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classes: héritage

Page 13: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classes: associations

Page 14: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe : notation simple

• Une classe définit un "type", ensemble d'objets pouvant exister à l'exécution du programme

Voiture

Bateau

Véhicule

Page 15: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Encapsulation

Page 16: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe : syntaxe détaillée

Page 17: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Attribut multivalué

Page 18: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Attribut dérivé

Page 19: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classes Abstraites

Page 20: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Héritage

Page 21: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Heritage ??

Page 22: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Polymorphisme

Page 23: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Animal

Chat Chien Raton laveur

Généralisation Spécialisation

COHERENCE

Super-classe

Sous-classe

Généralisation

Page 24: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Véhicule

Tapis volant

AérienTerrestre

TapisMULTIPLE

Fusion de plusieurs classesen une seule classe Sous-classe

Super-classe

Super-classe

Héritage multiple

Page 25: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Véhicule

A voile TerrestreA moteur Marin

Motorisation Milieu

DISCRIMINANTDISCRIMINANT

Généralisations Multiples

Page 26: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Véhicule

A voile TerrestreA moteur Marin

Pétrolette

Motorisation Milieu

{Inclusif}

Nécessaire

Obligation d'Héritage de toutes les dimensions

Page 27: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 28: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Core Backbone Simplifié

Page 29: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classification (Distilled)

Page 30: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Dérivation (Distilled)

Page 31: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple : Espresso Compilateur

• http://types.bu.edu/Espresso/report/Espresso.html

Page 32: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Types fondamentaux

Page 33: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple log4j

Page 34: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Stéréotypes et Variations

Page 35: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Instances

Page 36: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Stéréotypes dans les classes

Page 37: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Le stéréotype "utility"

Page 38: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Templates

Page 39: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

SP CPP

Page 40: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Packages

Page 41: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Packages

• Utilisés pour séparer le modèle en conteneurs logiques, et décrire leurs interactions à un haut niveau

Page 42: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple de Packages

Page 43: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Packages

Page 44: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Packages

Page 45: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Stéréotypes de Packages

Page 46: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 47: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Packages (Distilled)

Page 48: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Associations

Page 49: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Association

Page 50: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Lien

Page 51: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Nommage d'Association

Page 52: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Rôles

Page 53: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Nécessité des noms de Rôles

Page 54: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Cardinalités

Page 55: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Navigabilité

Page 56: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Agregation

Page 57: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Relation de Composition

Page 58: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Composition Vue Interne

Page 59: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Agrégation et composition (Distilled)

Page 60: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Associations qualifiées

Page 61: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Association qualifiée (Distilled)

Page 62: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Relation N-aire

Page 63: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe d'association

Page 64: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe d'association (Distilled)

Page 65: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe d'association 2

Page 66: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Association dérivée

Page 67: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Relation de dépendance

• Une dépendance traduit l’existence d’un lien fugitif entre deux classes, par exemple lors de la création d’un objet, ou d’un passage de paramètre

Page 68: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

DernierDiagrammeClasses (Distilled)

Page 69: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Contraintes Exprimées dans le modèle

Page 70: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Contraintes

Page 71: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Contraintes

Page 72: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Contraintes

Page 73: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Contraintes: Exercice : tout peut être décrit dans le modèle?

Page 74: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Interfaces

Page 75: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interfaces

Page 76: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interfaces

Page 77: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Réalisation d'Interfaces

Page 78: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interfaces (Distilled)

Page 79: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interfaces (Distilled)

Page 80: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Composants Déploiement

Page 81: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes Objet (d'instances)

• Les diagrammes objet illustrent les interactions concrètes entre instances de classes (les liens y sont des instances des relations)

Page 82: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Composants et Composites

Page 83: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Liens internes entre composants

Page 84: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Instances

• Les instances ne sont pas utilisées dans les diagrammes de classes, mais apparaissent dans les cas d'utilisation, et les diagrammes de trace d'événements (activity diagrams)

Page 85: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Instances

Page 86: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagramme de collaboration

Page 87: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 88: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Structure Composite

• Les diagrammes de structure composite donnent le moyen de stratifier la structure et de se concentrer sur des détails internes concernant les associations.

• Un tel diagramme décrit la structure interne d'un classifieur.

Page 89: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 90: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaborations

Page 91: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Composants

• Les diagrammes de composants sont utilisés pour modéliser des structures à plus haut niveau, ou plus complexes, qui déclarent des interfaces précises. La plupart du temps, un composant fait intervenir plusieurs classes

Page 92: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 93: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Deployment Diagrams

• Les diagrammes de déploiement décrivent la disposition concrète des éléments du modèle dans le monde physique

Page 94: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 95: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 96: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Modules

Page 97: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Composants

Page 98: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Ex: Composants ArgoUML

Page 99: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Déploiement

Page 100: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Deploiement (Distilled)

Page 101: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Etats

Page 102: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de machines d'états finis

• Les diagrammes d'état finis décrivent les états stables d'une classe, et les transitions quoi s'y appliquent

Page 103: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 104: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 105: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 106: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 107: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 108: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Jonction

Page 109: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Historique

Page 110: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Concurrence

Page 111: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Communication

• Les diagrammes de communication décrivent le réseau et le séquencement de messages entre objets pendant l'exécution d'une collaboration

Page 112: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 113: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 114: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Transition

Page 115: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Transition Gardée

Page 116: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Etats Composites

Page 117: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Abstraction des Etats Composites

Page 118: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Entry / Exit / On / Do

Page 119: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Transitions Boucles

Page 120: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Parallélisme

Page 121: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Synchronisation

Page 122: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple Etats

Page 123: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Etats (Distilled)

Page 124: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Etats (Distilled)

Page 125: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Etats (Distilled)

Page 126: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Activités

Page 127: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Activity Diagrams

• Les diagrammes d'activité ont un large champ d'utilisation. A plus haut niveau, ils peuvent servir à capturer les points de décision et le contrôle dans un process. Ils peuvent aussi servir à documenter un algorithme.

Page 128: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 129: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 130: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 131: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple

Page 132: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Expansion regions

Page 133: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple : exceptions, régions interruptibles

Page 134: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Parameter sets

Page 135: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Transition entre Activités

Page 136: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Couloirs d'Activités

Page 137: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Transition Gardée

Page 138: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 139: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Machineà Café

Page 140: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Synchronisation

Page 141: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Séquences

Page 142: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Séquence

• Les diagrammes de séquence sont des diagrammes de communication dans lesquels la dimension verticale est utilisée pour matérialiser l'écoulement du temps

Page 143: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 144: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 145: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Temps concret

Page 146: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Boucles

Page 147: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Sections critiques

Page 148: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Décomposition

Page 149: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Invariants

Page 150: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Séquences

Page 151: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Activation

Page 152: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Messages de Séquences

Page 153: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagramme deSéquence

Page 154: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Sequence (Distilled)

Page 155: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Sequence (Distilled)

Page 156: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Sequence (Distilled)

Page 157: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Collaborations

Page 158: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaborations

Page 159: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaborations

Page 160: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaborations

Page 161: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaboration au Niveau Classe

Page 162: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaboration (Distilled)

Page 163: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Collaborations et Packages

Page 164: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Use Cases

Page 165: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Cas d'Utilisation

• Ces diagrammes modélisent des interactions entre les utilisateurs et le système. Ils définissent le comportement, les conditions et contraintes sous la forme de scripts ou de scénarios

Page 166: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 167: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 168: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemples

Page 169: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Use Cases dans l'analyse

Page 170: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Use Cases

Page 171: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Use Case

Page 172: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Use Case

Page 173: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Stéréotypes de Use Cases

Page 174: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Relations de Use Case (Distilled)

Page 175: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Use Case Points d'extension (Distilled)

Page 176: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Diagrammes de Timing

Page 177: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Timing Diagrams

• Ces diagrammes combinent les diagrammes de séquence et d'état pour proposer un point de vue sur l'évolution de l'état d'un objet au fil du temps, et sur les messages qui modifient cet état.

Page 178: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 179: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 180: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML : Diagrammes d'"interaction overview"

Page 181: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interaction Overview Diagrams

• Ces diagrammes utilisent diagrammes d'activité et de séquence pour décrire comment des fragments d'interaction (décrits par des diagrammes de séquence) sont combinés par des points de décision et des flux

Page 182: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France
Page 183: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

UML 2.0 Elements nouveaux

Page 184: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Métamodèle

• Diagrammes de collaboration -> diagrammes de communication

• Diagrammes de d'interaction hybrides (overview of interaction)

• Diagrammes temporels (timing diagrams)

• Diagrammes de structure composite

Page 185: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de classe

• Les attributs et les associations unidirectionnelles sont devenues deux notations équivalentes pour le même concept de "propriété" (property).

• Les multiplicités discontinues ont été abandonnées ([2,7])

• Diverses propriétés et mots clef ont été abandonnées ("frozen", <<parameter>>, <<local>>)

Page 186: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de séquence

• Nouvelle notation dite de "cadre d'interaction" (interaction frame) pour les sections itératives, conditionnelles de l'exécution, et divers modes de contrôle

• Cela permet de décrire des algorithmes de façon réaliste dans les diagrammes de séquence

Page 187: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de Séquence

Page 188: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de séquence (2)

• Les marqueurs d'itération et les gardes des messages ont été supprimés (ils servaient précisément à décrire des algorithmes)

• Les têtes de lignes de vie ne sont plus des instances, mais des "participants"

Page 189: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de classe

• Les stéréotypes sont plus précisément définis. Les chaînes entre guillemets sont des "mots clef" (keyword), dont certains seulement sont des stéréotypes

• La classification multiple utilise des ensembles de classification ("classification sets") pour grouper les généralisations

Page 190: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Interfaces

• Les classes peuvent requérir des interfaces, et pas seulement les proposer

Page 191: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes de composants

• Les composants n'ont plus une icône spécifique, mais deviennent un stéréotype comme les autres – (la différence entre classe et composant n'avait

jamais été claire)

Page 192: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Structure composite• La structure composite permet de

décomposer récursivement une classe dans sa structure interne, notamment pour faire apparaître les éléments de la classe liés aux interfaces

Page 193: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Exemple de Structure Composite

Page 194: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Classe Active

• Une classe active décrit des instances don’t chacune possède son propre thread de contrôle.

Page 195: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'état

• UML 2.0 supprime la distinction entre actions et activités.

• Une activité est simplement indiquée par une clause dans un état "do/"

• (ou "do-activity/")

Page 196: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'activité

• Ces diagrammes ne sont plus un cas particulier des diagrammes d'état

• Suppression de l'obligation de faire correspondre chaque "fork" à un "join"

• Ces diagrammes sont mieux compris comme des diagrammes de flot de jetons (de type réseau de Petri)

Page 197: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'activité

Page 198: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'activité

Nombreuses nouvelles notations :• signaux de temps et d'acceptation• paramètres• spécifications de join• pins (puces)• transformations de flot• rateaux de sous diagrammes (subdiagram rakes)• régions d'expansion• terminaisons de flots

Page 199: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'activité

• Les flots entrants multiples étaient traités comme un "merge" implicite en UML 1.x (sans synchronisation)

• Ils deviennent un "join" implicite (avec synchronisation)

• Recommandation : utiliser des join ou merge explicites!

Page 200: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Diagrammes d'activité

• Les lignes de vie (life lines ou swim lanes) devinennent multi dimensionnelles,

• elles sont appelées des partitions

Page 201: UML2 : Les diagrammes Laurent Henocque  Enseignant Chercheur ESIL/INFO France

Fin du document