Diagramme de collaboration
- Objectifs:
- Ce type de diagramme montre des interactions entre objets (instances
de classes et acteurs). Il s'intéresse à la structure
de collaboration entre objets (séquencement, itération,
concurrence, etc.)
- Il permet de représenter le contexte d'une interaction, car on
peut y préciser les états des objets qui interagissent.
- Ce diagramme est équivalent au diagramme
de séquences. Cependant, l'aspect temporel n'apparaît
pas, mais l'aspect chronologique est présent.
- Éléments de base:
- Un tel diagramme est formé d'un sous-ensemble du diagramme
de classes et les messages échangés entre objets
à travers les liens.
- Pour représenter l'aspect chronologique (ordre d'envoi
des messages), il est important de numéroter les messages.
- Le sens des messages nous permet de déterminer l'envoyeur
et le receveur.
Syntaxe des messages

Synchronisation des messages
- UML permet de spécifier de manière très précise l'ordre et les conditions
d'envoi des messages sur un diagramme dynamique
- Exemples
Ce message a pour numéro de séquence "3".
- [heure = midi] 1 : manger()
Ce message n'est envoyé que s'il est midi.
Ce message est envoyé de manière séquentielle un certain nombre
de fois.
- 1.3,2.1 / [t < 10s] 2.5 : age := demanderAge(nom,prenom)
Ce message (numéro 2.5) ne sera envoyé qu'après les messages 1.3
et 2.1, et que si "t < 10s".
Exemple de diagramme de collaboration indiquant le sens des messages

Exemple de diagramme de collaboration indiquant l'ordre
d'envoi des messages

|