Qu’est-ce qu’un diagramme de séquence

Les deux diagrammes de séquence et les diagrammes de collaboration sont des types de diagrammes d’interaction. Les diagrammes d’interaction traitent la vue dynamique d’un système. Un diagramme de séquence est un diagramme d’interaction qui met l’accent sur l’ordre temporel des messages. Il représente les objets et les classes impliqués dans le scénario ainsi que la séquence des messages échangés entre les objets nécessaires pour réaliser la fonctionnalité du scénario. En général, vous utiliserez un diagramme de séquence pour spécifier le flux principal d’un cas d’utilisation, et des variantes de ce diagramme pour spécifier les flux exceptionnels d’un cas d’utilisation.
Sequence Diagram, UML Diagrams Example: Break Communication Fragment - Visual Paradigm Community Circle

Les composants du diagramme de séquence

Objet

Dans le UML, un objet dans un diagramme de séquence est représenté par un rectangle contenant le nom de l’objet, souligné. Un objet peut être nommé de l’une des trois façons suivantes : le nom de l’objet, le nom de l’objet et sa classe, ou simplement le nom de la classe (objet anonyme). Les trois façons de nommer un objet sont illustrées dans la figure ci-dessous.

Ligne de vie

Les entités des participants dans une collaboration (scénario) sont écrites horizontalement en haut du diagramme. Une ligne de vie est représentée par une ligne verticale pointillée tracée sous chaque objet. Celles-ci indiquent l’existence de l’objet.

Lifelines

Les noms d’objets peuvent être spécifiques (par exemple, myAccount) ou généraux (par exemple, myAccount :Account). Souvent, un objet anonyme (:Account) peut être utilisé pour représenter n’importe quel objet de la classe. Chaque objet possède également son propre timeline représenté par une ligne pointillée située sous l’objet. Les messages entre objets sont représentés par des flèches pointant de l’objet expéditeur à l’objet destinataire.

Tout dans un système orienté objet est réalisé par des objets. Les objets assument la responsabilité de tâches telles que la gestion des données, le déplacement des données dans le système, la réponse aux requêtes et la protection du système. Les objets collaborent en communiquant ou en interagissant entre eux.

Message

Les messages représentent l’appel d’opérations et sont affichés horizontalement. Ils sont tracés de l’expéditeur au destinataire. L’ordre est indiqué par la position verticale, le premier message étant affiché en haut du diagramme, et le dernier message en bas. Par conséquent, les numéros de séquence sont facultatifs.

Le type de ligne et le type de flèche indiquent le type de message utilisé :

  1. Un message synchrone (généralement un appel d’opération) est représenté par une ligne pleine avec une flèche remplie. Il s’agit d’un appel de message régulier utilisé pour la communication normale entre l’expéditeur et le destinataire.
    Lifelines with synchronous message
  2. Un message de retour utilise une ligne pointillée avec une flèche ouverte.
    Lifelines with return message
  3. Un message asynchrone possède une ligne pleine avec une flèche ouverte. Un signal est un message asynchrone qui n’a pas de réponse.
    Lifelines with asynchronous

Messages de création et de destruction

Les participants n’ont pas nécessairement une existence pendant toute la durée de l’interaction du diagramme de séquence. Les participants peuvent être créés et détruits selon les messages qui sont échangés.

Un message de constructeur crée son destinataire. L’expéditeur qui existe déjà au début de l’interaction est placé en haut du diagramme. Les cibles créées pendant l’interaction par un appel de constructeur sont automatiquement placées plus bas dans le diagramme.

Lifelines with constructorA

message de destructeur détruit son destinataire. Il existe d’autres moyens d’indiquer qu’un destinataire est détruit pendant une interaction. Vous devez uniquement utiliser un destructeur lorsque la destruction d’un destinataire est définie comme « après destructeur ».

Lifelines with destructor

Message non instantané

Les messages sont souvent considérés comme instantanés, de sorte que le temps nécessaire pour atteindre le destinataire est négligeable. Les messages sont dessinés sous forme de flèche horizontale. Pour indiquer qu’il faut un certain temps avant que le destinataire reçoive effectivement un message, on utilise une flèche inclinée est utilisée.

Lifelines with instantaneous message

Focus de contrôle

Le focus de contrôle représente la période pendant laquelle un élément effectue une opération. Le haut et le bas du rectangle sont alignés respectivement avec le moment de début et le moment de fin

Notation d’itération

Notation d’itération représente un message envoyé plusieurs fois à plusieurs objets destinataires, comme cela se produit lorsqu’on itère sur une collection. Vous pouvez indiquer la base de l’itération entre crochets, par exemple *[pour toutes les lignes de commande].

Exemple : Passer une commande

L’exemple montre un diagramme de séquence avec trois objets participants : Client, Commande et Stock. Même sans connaître formellement la notation, vous pouvez probablement avoir une assez bonne idée de ce qui se passe.

  1. Étape 1 et 2 : Le client crée une commande.
  2. Étape 3 : Le client ajoute des articles à la commande.
  3. Étape 4, 5 : Chaque article est vérifié pour sa disponibilité en stock.
  4. Étape 6, 7, 8 : Si le produit est disponible, il est ajouté à la commande.
  5. Étape 9 retour
  6. Étape 10, 11 : enregistrer et détruire la commande

Sequence Diagram example

Fragments de séquence

Dans un diagramme de séquence UML, les fragments combinés vous permettent de montrer des boucles, des branches et d’autres alternatives. Un fragment combiné se compose d’un ou plusieurs opérandes d’interaction, et chacun d’eux englobe un ou plusieurs messages, utilisations d’interaction ou fragments combinés.

Un fragment de séquence est représenté par une boîte appelée fragment combiné, qui encadre une partie des interactions dans un diagramme de séquence. L’opérateur de fragment (en haut à gauche) indique le type de fragment. Les types de fragments incluent ref, assert, loop, break, alt, opt et neg, ref, sd.

Résumé de la notation du diagramme de séquence

Opérateur Signification
alt Fragments alternatifs : seul celui dont la condition est vraie s’exécute.
opt Facultatif: le fragment s’exécute uniquement si la condition fournie est vraie. Équivalent à un alt uniquement avec une trace.
par Parallèle: chaque fragment est exécuté en parallèle.
boucle Boucle: le fragment peut s’exécuter plusieurs fois, et la condition indique la base de l’itération.
critique Région critique: le fragment ne peut avoir qu’un seul thread en cours d’exécution à la fois.
nég Négatif: le fragment montre une interaction non valide.
ref Référence: fait référence à une interaction définie sur un autre diagramme. Le cadre est dessiné pour couvrir les lignes de vie impliquées dans l’interaction. Vous pouvez définir des paramètres et une valeur de retour.
sd Diagramme de séquence: utilisé pour entourer un diagramme de séquence entier.

Exemple – Scénario de commande

Un membre d’un navire qui souhaite passer une commande en ligne. L’article commandé sera envoyé au membre par coursier ou par courrier ordinaire selon le statut du membre (VIP, membre ordinaire). Optionnellement, le magasin enverra au membre une notification de confirmation si le membre a choisi l’option de notification dans la commande.

Sequence Diagram example

Visual Paradigm prend en charge les diagrammes de séquence et d’autres types de diagrammes UML. Vous trouverez tous les outils nécessaires pour modéliser les comportements dynamiques d’un système à l’aide d’un diagramme de séquence.

Vidéo rapide – 5 étapes pour dessiner un diagramme de séquence

Résumé

Le diagramme de séquence est un modèle basé sur la séquence temporelle de la collaboration d’objets. Il montre comment les objets interagissent entre eux dans un scénario d’utilisation spécifique. Grâce à ses capacités avancées de modélisation visuelle, vous pouvez créer des diagrammes de séquence complexes en quelques clics. En outre, Visual Paradigm peut générer des diagrammes de séquence à partir du flux d’événements que vous définissez dans la description du cas d’utilisation.

 

Références

Leave a Reply