Le diagramme de séquence
Le diagramme de séquence met en évidence la chronologie des messages échangés entre les objets participant à une interaction. Ces objets sont représentés dans le diagramme par leurs lignes de vie.
Créer un diagramme de séquence
Pour créer un diagramme de séquence dans Hopex IT Architecture :
1. Faites un clic droit sur une interaction.
2. Dans le menu contextuel qui s'affiche, cliquez sur Nouveau > Diagramme d'interaction.
Les lignes de vie
Une ligne de vie représente un participant dans une interaction.
Les lignes de vie sont des instances de différents types (de classe, d'acteurs, etc.).
Dans un diagramme de séquence, le temps est représenté comme s'écoulant du haut vers le bas le long des lignes de vie de ces objets. Entre ces objets transitent des instances de messages.
*Les instances représentées dans un diagramme de séquence peuvent être des instances de classe, d'acteur, de paquetage, de cas d'utilisation, de composant ou de nœud, ce qui permet de définir des diagrammes de séquence au niveau de détail souhaité.
Créer une ligne de vie
Pour créer une ligne de vie :
1. Cliquez sur le bouton Ligne de vie .
2. Cliquez dans le diagramme.
Une fenêtre s'ouvre.
3. Saisissez le nom de la ligne de vie.
4. Cliquez sur Ajouter.
La ligne de vie apparaît dans le diagramme.
Propriétés d'une ligne de vie
Pour accéder aux propriétés d'une ligne de vie :
*Sélectionnez l'instance et cliquez sur le bouton Propriétés de la fenêtre d'édition s'il n'est pas activé.
Vous pouvez sélectionner le Type de l'objet (Acteur, Classe, etc.), préciser de quelle Classe, Acteur, etc. cet objet est une instance et indiquer son stéréotype.
Les messages
Un message définit une communication particulière entre les lignes de vie d'une interaction. Il spécifie l'émetteur et le récepteur par l'intermédiaire de spécifications d'occurrence, ainsi que le type de communication. Cette communication peut être, par exemple, l'émission d'un signal, l'invocation d'une opération, la création ou la destruction d'une instance.
Créer un message
Pour créer un message dans le diagramme de séquence :
1. Cliquez sur le bouton Message de la barre d'insertion d'objets en sélectionnant le type de message voulu.
2. Allez de la ligne pointillée sous le premier objet à celle qui est sous le deuxième objet en maintenant le bouton gauche de la souris enfoncé.
Le message échangé entre les deux objets se dessine.
Types de messages
Vous pouvez créer quatre types de messages :
• Dans un message de type "Complet", l'émetteur et le destinataire sont tous les deux définis.
• Dans un message "Perdu", seul l'émetteur est connu. On considère ici que le message n'atteint jamais sa destination.
• Dans un message "Trouvé", seul le destinataire est connu. C'est le cas lorsque l'origine du message se situe en dehors du contexte de description.
• Dans un message de type "Inconnu", ni l'émetteur ni le destinataire ne sont définis.
Occurrence d'exécution
Une occurrence d'exécution d'une ligne de vie (execution specification) représente une unité d'action ou de comportement qui se déroule à partir d'une occurrence d'événement de début jusqu'à une occurrence d'événement de fin.
Créer une occurrence d'exécution
Pour créer une occurrence d'exécution :
1. Dans le diagramme de séquence, cliquez sur le bouton Occurrence d'exécution de la barre d'insertion d'objets.
2. Positionnez-la sur la ligne de vie concernée.
L'occurrence apparaît dans le diagramme.
Occurrence d'événement
La création d'un message ou d'une occurrence d'exécution entraîne automatiquement la création d'occurrences d'événements.
Une occurrence d'événement (Occurrence Specification) est un point syntaxique à l'extrémité d'un message ou au début ou à la fin d'une occurrence d'exécution.
Les occurrences d'événement sont ordonnées le long d'une ligne de vie.
Ce sont les unités sémantiques de base d'une interaction.
Vous pouvez accéder au menu contextuel d'une occurrence d'événement en cliquant avec le bouton droit sur l'une des extrémités d'un message.
Calcul des numéros de séquence
A partir du positionnement des occurrences d'événement, un outil de calcul permet d'ordonner les messages et les occurrences d'exécution.
Pour ordonner les messages circulant entre des lignes de vie d'une interaction :
1. Ouvrez le menu contextuel de l'interaction décrite.
2. Cliquez sur Calculer les numéros de séquence.
L'outil applique automatiquement des numéros aux messages.
Fragment combiné
Un fragment combiné permet de décrire de manière concise plusieurs séquences d'exécution.
Un fragment combiné est défini par un opérateur d'interaction et les opérandes d'interactions correspondants.
Créer un fragment combiné
Pour créer un fragment combiné :
1. Dans la barre d'insertion d'objets du diagramme de séquence, cliquez sur le bouton Fragment combiné.
Vous pouvez associer au fragment combiné différents types d'opérateur d'interaction. La flèche située à droite du bouton offre un raccourci vers quatre d'entre eux. Voir Type d'opérateur d'interaction.
2. Cliquez dans le diagramme.
La fenêtre de création du fragment combiné apparaît.
3. Indiquez son Nom et le Type d'opérateur d'interaction si ce n'est pas déjà fait.
4. Cliquez sur Terminer.
Un fragment combiné est représenté par un rectangle dont l'angle supérieur gauche affiche le type d'opérateur d'interaction.
Dans l'exemple ci-dessous, un fragment combiné de type optionnel traduit un comportement susceptible de contrarier le séquencement normal (l'ouverture de la porte).
Type d'opérateur d'interaction
Le type d'opérateur d'interaction conditionne la signification du fragment combiné. Il existe différents types d'opérateurs : seq, alt, opt, break, par, strict, loop, region, neg, assert, ignore et consider.
Opérande d'interaction
Un opérande d'interaction est contenu dans un fragment combiné et représente un opérande de l'expression donnée par le fragment combiné englobant. Il peut être conditionné par une contrainte d'interaction qui sert de condition de garde.
Utilisation d'interaction
Une utilisation d'interaction se réfère à une interaction. C'est un moyen de copier le contenu de l'interaction référencée à l'endroit de l'occurrence d'interaction.
Porte
Une porte (gate) est un point de connexion entre un message extérieur à un fragment d'interaction et un message appartenant à ce fragment d'interaction.
Continuation
Une continuation est un moyen syntaxique de définir le prolongement des séquences de différentes branches de fragment combiné alternatif. Les continuations sont similaires à des labels représentant des points intermédiaires dans un flot de contrôle.