Tutoriel sur le diagramme de séquence - Guide complet avec exemples

Publié: 2017-01-27

Ce didacticiel sur les diagrammes de séquence a pour but de vous aider à mieux comprendre les diagrammes de séquence. pour expliquer tout ce que vous devez savoir, de la façon de dessiner un diagramme de séquence aux erreurs courantes que vous devez éviter lorsque vous en dessinez un.

Il existe 3 types de diagrammes d'interaction ; Diagrammes de séquence, diagrammes de communication et chronogrammes. Ces diagrammes sont utilisés pour illustrer les interactions entre les parties d'un système. Parmi les trois, les diagrammes de séquence sont préférés par les développeurs et les lecteurs pour leur simplicité.

Dans ce didacticiel de diagramme de séquence, vous découvrirez;

  • Qu'est-ce qu'un diagramme de séquence
  • Notations du diagramme de séquence
  • Meilleures pratiques en matière de diagramme de séquence
  • Comment dessiner un diagramme de séquence
  • Diagramme de séquence Erreurs courantes
  • Modèles et exemples de diagramme de séquence
  • Diagramme de séquence Présentation SlideShare
  • Commentaires sur le Guide du diagramme de séquence

Qu'est-ce qu'un diagramme de séquence ?

Les diagrammes de séquence, couramment utilisés par les développeurs, modélisent les interactions entre les objets dans un cas d'utilisation unique. Ils illustrent comment les différentes parties d'un système interagissent les unes avec les autres pour exécuter une fonction, et l'ordre dans lequel les interactions se produisent lorsqu'un cas d'utilisation particulier est exécuté.

En termes plus simples, un diagramme de séquence montre différentes parties d'un système qui fonctionnent dans une « séquence » pour accomplir quelque chose.

montre que différentes parties d'un système fonctionnent dans une « séquence » pour accomplir quelque chose.

Notations du diagramme de séquence

Un diagramme de séquence est structuré de telle manière qu'il représente une chronologie qui commence en haut et descend progressivement pour marquer la séquence des interactions. Chaque objet a une colonne et les messages échangés entre eux sont représentés par des flèches.

Présentation rapide des différentes parties d'un diagramme de séquence

Notation de ligne de vie

Diagramme de séquence - Ligne de vie

Un diagramme de séquence est composé de plusieurs de ces notations de ligne de vie qui doivent être disposées horizontalement en haut du diagramme. Deux notations de ligne de vie ne doivent pas se chevaucher. Ils représentent les différents objets ou parties qui interagissent les uns avec les autres dans le système au cours de la séquence.

Une notation de ligne de vie avec un symbole d'élément d'acteur est utilisée lorsque le diagramme de séquence particulier appartient à un cas d'utilisation.

ligne de vie avec un symbole d'élément d'acteur

Une ligne de vie avec un élément entity représente les données système. Par exemple, dans une application de service client, l'entité Client gèrerait toutes les données relatives à un client.

Ligne de vie de l'entité

Une ligne de vie avec un élément limite indique une limite système/un élément logiciel dans un système ; par exemple, les écrans d'interface utilisateur, les passerelles de base de données ou les menus avec lesquels les utilisateurs interagissent sont des limites.

Ligne de vie de frontière

Et une ligne de vie avec un élément de contrôle indique une entité ou un gestionnaire de contrôle. Il organise et ordonnance les interactions entre les frontières et les entités et sert de médiateur entre elles.

Contrôlez la ligne de vie

Barres d'activation

La barre d'activation est la case placée sur la ligne de vie. Il est utilisé pour indiquer qu'un objet est actif (ou instancié) lors d'une interaction entre deux objets. La longueur du rectangle indique la durée pendant laquelle les objets restent actifs.

Dans un diagramme de séquence, une interaction entre deux objets se produit lorsqu'un objet envoie un message à un autre. L'utilisation de la barre d'activation sur les lignes de vie du Message Caller (l'objet qui envoie le message) et du Message Receiver (l'objet qui reçoit le message) indique que les deux sont actifs/instanciés lors de l'échange du message.

Diagramme de séquence - Barres d'activation

Flèches de messages

Une flèche allant de l'appelant du message au récepteur du message spécifie un message dans un diagramme de séquence. Un message peut circuler dans n'importe quelle direction ; de gauche à droite, de droite à gauche ou de retour à l'appelant lui-même. Bien que vous puissiez décrire le message envoyé d'un objet à l'autre sur la flèche, avec différentes pointes de flèche, vous pouvez indiquer le type de message envoyé ou reçu.

La flèche de message est accompagnée d'une description, connue sous le nom de signature de message. Le format de cette signature de message est ci-dessous. Toutes les parties à l'exception du message_name sont facultatives.

attribut = nom_message (arguments) : type_retour

  • Message synchrone

Comme le montre l'exemple des barres d'activation, un message synchrone est utilisé lorsque l'expéditeur attend que le destinataire traite le message et revienne avant de poursuivre avec un autre message. La pointe de flèche utilisée pour indiquer ce type de message est pleine, comme celle ci-dessous.

Flèche de message synchrone
  • Message asynchrone

Un message asynchrone est utilisé lorsque l'appelant du message n'attend pas que le récepteur traite le message et revienne avant d'envoyer d'autres messages à d'autres objets du système. La pointe de flèche utilisée pour afficher ce type de message est une flèche de ligne comme illustré dans l'exemple ci-dessous.

Exemple de message asynchrone
  • Message de retour

Un message de retour est utilisé pour indiquer que le destinataire du message a fini de traiter le message et rend le contrôle à l'appelant du message. Les messages de retour sont des éléments de notation facultatifs, car une barre d'activation déclenchée par un message synchrone implique toujours un message de retour.

Exemple de message de retour

Conseil : vous pouvez éviter d'encombrer vos diagrammes en minimisant l'utilisation des messages de retour puisque la valeur de retour peut être spécifiée dans la flèche du message initial elle-même.

  • Message de création de participant

Les objets ne vivent pas nécessairement pendant toute la durée de la séquence d'événements. Des objets ou des participants peuvent être créés en fonction du message envoyé.

La notation de la boîte de participant supprimé peut être utilisée lorsque vous devez montrer que le participant particulier n'existait pas jusqu'à ce que l'appel de création ait été envoyé. Si le participant créé fait quelque chose immédiatement après sa création, vous devez ajouter une case d'activation juste en dessous de la case du participant.

Exemple de création de participant
  • Message de destruction des participants
Message de destruction de participation

De même, lorsqu'ils ne sont plus nécessaires, les participants peuvent également être supprimés d'un diagramme de séquence. Cela se fait en ajoutant un 'X' à la fin de la ligne de vie dudit participant.

  • Message réflexif

Lorsqu'un objet s'envoie un message à lui-même, on parle de message réflexif. Il est indiqué par une flèche de message qui commence et se termine à la même ligne de vie que celle illustrée dans l'exemple ci-dessous.

Message réflexif

Commentaire

Les diagrammes UML permettent généralement l'annotation de commentaires dans tous les types de diagrammes UML. L'objet de commentaire est un rectangle avec un coin replié, comme illustré ci-dessous. Le commentaire peut être lié à l'objet associé par une ligne en pointillés.

Exemple d'objet de commentaire

Noter:   Consultez les meilleures pratiques en matière de diagramme de séquence pour en savoir plus sur les fragments de séquence.

Meilleures pratiques en matière de diagramme de séquence

  • Gérer les interactions complexes avec les fragments de séquence

Un fragment de séquence est représenté comme une boîte qui encadre une section d'interactions entre objets (comme illustré dans les exemples ci-dessous) dans un diagramme de séquence.

Il est utilisé pour montrer des interactions complexes telles que des flux alternatifs et des boucles d'une manière plus structurée. Dans le coin supérieur gauche du fragment se trouve un opérateur. Ceci - l'opérateur de fragment - spécifie de quel type de fragment il s'agit.

Alternatives

Le fragment de combinaison alternative est utilisé lorsqu'un choix doit être fait entre deux ou plusieurs séquences de messages. Il modélise la logique « si alors sinon ».

Le fragment alternatif est représenté par un grand rectangle ou un cadre ; il est spécifié en mentionnant 'alt' à l'intérieur de la boîte de nom du cadre (alias opérateur de fragment).

Pour montrer deux alternatives ou plus, le plus grand rectangle est ensuite divisé en ce qu'on appelle des opérandes d'interaction à l'aide d'une ligne pointillée, comme indiqué dans l'exemple de diagramme de séquence ci-dessus. Chaque opérande a une garde à tester et elle est placée dans le coin supérieur gauche de l'opérande.

Exemple de fragment alternatif - tutoriel sur le diagramme de séquence

Choix

Le fragment de combinaison d'options est utilisé pour indiquer une séquence qui ne se produira que sous certaines conditions, sinon, la séquence ne se produira pas. Il modélise l'instruction « si alors ».  

Semblable au fragment alternatif, le fragment d'option est également représenté par un cadre rectangulaire où 'opt' est placé à l'intérieur de la boîte de nom.

Contrairement au fragment alternatif, un fragment d'option n'est pas divisé en deux opérandes ou plus. La protection de l'option est placée dans le coin supérieur gauche.

(Trouvez un exemple de diagramme de séquence avec un fragment d'option dans la section Modèles et exemples de diagramme de séquence).

Boucles

Le fragment de boucle est utilisé pour représenter une séquence répétitive. Placez les mots « boucle » dans la zone de nom et la condition de garde près du coin supérieur gauche du cadre.

En plus du test booléen, la garde dans un fragment de boucle peut avoir deux autres conditions spéciales testées. Ce sont des itérations minimales (écrites comme minint = [le nombre] et des itérations maximales (écrites comme maxint = [le nombre]).

S'il s'agit d'une garde d'itérations minimales, la boucle ne doit pas s'exécuter en moins que le nombre mentionné, et s'il s'agit d'une garde d'itérations maximales, la boucle ne doit pas s'exécuter plus que le nombre indiqué.

(Trouvez un exemple de fragment de boucle ci-dessous dans les modèles de diagramme de séquence et la section des exemples)

Fragment de référence

Vous pouvez utiliser le fragment ref pour gérer la taille des grands diagrammes de séquence. Il vous permet de réutiliser une partie d'un diagramme de séquence dans un autre, ou en d'autres termes, vous pouvez référencer une partie d'un diagramme dans un autre diagramme en utilisant le fragment ref.

Pour spécifier le fragment de référence, vous devez mentionner « ref » dans la zone de nom de la trame et le nom du diagramme de séquence auquel il est fait référence à l'intérieur de la trame.

Exemple de fragment de référence

Pour plus de fragments de séquence, reportez-vous à Au-delà des bases des diagrammes de séquence : Partie 1 , Partie 2 et Partie 3 .

  • Dessinez des diagrammes de séquence plus petits qui capturent l'essence du cas d'utilisation

Au lieu d'encombrer votre diagramme de séquence avec plusieurs objets et groupes de messages qui confondront le lecteur, dessinez quelques diagrammes de séquence plus petits qui expliquent avec justesse ce que fait votre système. Assurez-vous que le diagramme tient sur une seule page et laisse également de la place pour des notes explicatives.

Aussi, au lieu de dessiner des dizaines de diagrammes de séquence, découvrez ce qui est commun entre les scénarios et concentrez-vous sur cela. Et si le code est expressif et peut se suffire à lui-même, il n'est pas nécessaire de dessiner un diagramme de séquence en premier lieu.

Comment dessiner un diagramme de séquence

Un diagramme de séquence représente le scénario ou le flux d'événements dans un seul cas d'utilisation. Le flux de messages du diagramme de séquence est basé sur le récit du cas d'utilisation particulier.

Ensuite, avant de commencer à dessiner le diagramme de séquence ou de décider quelles interactions doivent y être incluses, vous devez dessiner le diagramme de cas d'utilisation et préparer une description complète de ce que fait le cas d'utilisation particulier.

Comment dessiner un diagramme de séquence Un diagramme de séquence représente le scénario ou le flux d'événements dans un seul cas d'utilisation. Le flux de messages du diagramme de séquence est basé sur le récit du cas d'utilisation particulier. Ensuite, avant de commencer à dessiner le diagramme de séquence ou de décider quelles interactions doivent y être incluses, vous devez préparer une description complète de ce que fait le cas d'utilisation particulier.

À partir de l'exemple de diagramme de cas d'utilisation ci-dessus de "Créer un nouveau compte de bibliothèque en ligne", nous nous concentrerons sur le cas d'utilisation nommé "Créer un nouveau compte d'utilisateur" pour dessiner notre exemple de diagramme de séquence.

Avant de dessiner le diagramme de séquence, il est nécessaire d'identifier les objets ou acteurs qui seraient impliqués dans la création d'un nouveau compte utilisateur. Ceux-ci seraient;

  • Bibliothécaire
  • Système de gestion de bibliothèque en ligne
  • Base de données des informations d'identification des utilisateurs
  • Système de messagerie

Une fois que vous avez identifié les objets, il est alors important d'écrire une description détaillée de ce que fait le cas d'utilisation. À partir de cette description, vous pouvez facilement comprendre les interactions (qui devraient figurer dans le diagramme de séquence) qui se produiraient entre les objets ci-dessus, une fois le cas d'utilisation exécuté.

Voici les étapes qui se produisent dans le cas d'utilisation nommé "Créer un nouveau compte d'utilisateur de bibliothèque".

  • Le bibliothécaire demande au système de créer un nouveau compte de bibliothèque en ligne
  • Le bibliothécaire sélectionne ensuite le type de compte utilisateur de la bibliothèque
  • Le bibliothécaire saisit les coordonnées de l'utilisateur
  • Les détails de l'utilisateur sont vérifiés à l'aide de la base de données des informations d'identification de l'utilisateur
  • Le nouveau compte utilisateur de la bibliothèque est créé
  • Un récapitulatif des détails du nouveau compte est ensuite envoyé par e-mail à l'utilisateur

À partir de chacune de ces étapes, vous pouvez facilement spécifier les messages à échanger entre les objets du diagramme de séquence. Une fois que c'est clair, vous pouvez continuer et commencer à dessiner le diagramme de séquence.

Le diagramme de séquence ci-dessous montre comment les objets du système de gestion de bibliothèque en ligne interagissent les uns avec les autres pour exécuter la fonction « Créer un nouveau compte d'utilisateur de bibliothèque ».

Comment dessiner un diagramme de séquence - tutoriel de diagramme de séquence

Diagramme de séquence Erreurs courantes

Lorsqu'ils dessinent des diagrammes de séquence, les concepteurs ont tendance à commettre ces erreurs courantes. En évitant ces erreurs, vous pouvez garantir la qualité de votre diagramme.

  • Ajouter trop de détails. Cela encombre le schéma et le rend difficile à lire.
  • Diagrammes de séquence obsolètes et obsolètes qui ne sont pas pertinents par rapport aux interfaces, aux architectures réelles, etc. du système. N'oubliez pas de les remplacer ou de les modifier.
  • Ne laisser aucun espace vide entre le texte du cas d'utilisation et la flèche du message ; il est donc difficile pour quiconque de lire le diagramme.
  • Ne pas considérer attentivement les origines des flèches de message.

Voir ces erreurs courantes expliquées en détail dans Guide du diagramme de séquence : Erreurs courantes à éviter lors du dessin de diagrammes de séquence.

Exemples et modèles de diagramme de séquence

Vous trouverez ci-dessous quelques exemples de diagrammes de séquence et des modèles dessinés à l'aide de Creately. Créez des diagrammes de séquence en ligne à l'aide de l'outil en ligne de Creately. Cliquez sur le modèle pour l'ouvrir dans l'éditeur.

Diagramme de séquence d'un système d'examen en ligne

Examen en ligne - Modèle de diagramme de séquence
Cliquez sur l'image pour l'éditer en ligne

Système d'examen en ligne - Diagramme de classes (UML)

Exemple de diagramme de séquence d'un système de gestion scolaire

Système de gestion scolaire - Modèle de diagramme de séquence

Exemple de fragment de combinaison d'options

Exemple de fragment d'option

Exemple de séquence de boucle

Boucles - Exemple de diagramme de séquence

Voici d'autres modèles et exemples de diagrammes de séquence que vous pouvez modifier immédiatement.

Tutoriel sur le diagramme de séquence - Présentation SlideShare

Guide du diagramme de séquence Power Point (PPT) de Creately

Commentaires sur le didacticiel sur le diagramme de séquence

Ce didacticiel sur les diagrammes de séquence couvre tout ce que vous devez savoir sur les diagrammes de séquence et les dessiner. Si vous avez des suggestions ou des questions concernant le didacticiel du diagramme de séquence, n'hésitez pas à laisser un commentaire.

Plus de didacticiels sur les diagrammes

  • Tutoriel sur la modélisation des processus métier (Guide BPM expliquant les fonctionnalités)
  • Guide d'organigramme ultime (tutoriel complet d'organigramme avec exemples)
  • Tutoriel de diagramme de cas d'utilisation (guide avec exemples)