Diagramme de séquence

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
exemple de diagramme de séquence d'un restaurant

Les diagrammes de séquences sont la représentation graphique des interactions entre les acteurs et le système selon un ordre chronologique dans la formulation Unified Modeling Language.

L'utilité du diagramme de séquence[modifier | modifier le code]

Le diagramme de séquences permet de cacher les interactions d'objets dans le cadre d'un scénario d'un Diagramme des cas d'utilisation. Dans un souci de simplification, on représente l'acteur principal à gauche du diagramme, et les acteurs secondaires éventuels à droite du système. Le but étant de décrire comment se déroulent les actions entre les acteurs ou objets.

La dimension verticale du diagramme représente le temps, permettant de visualiser l'enchaînement des actions dans le temps, et de spécifier la naissance et la mort d'objets. Les périodes d'activité des objets sont symbolisées par des rectangles, et ces objets dialoguent par le biais de messages.

Dialogue entre les objets[modifier | modifier le code]

Plusieurs types de messages (actions) peuvent transiter entre les acteurs et objets.

  • message simple : le message n'a pas de spécificité particulière d'envoi et de réception.
  • message avec durée de vie : l'expéditeur attend une réponse du récepteur pendant un certain temps et reprend ses activités si aucune réponse n'a lieu dans un délai prévu.
  • message synchrone : l'expéditeur est bloqué jusqu'au signal de prise en compte par le destinataire. Les messages synchrones sont symbolisés par des flèches barrées.
  • message asynchrone : le message est envoyé, l'expéditeur continue son activité que le message soit parvenu ou pris en compte ou non. Les messages asynchrones sont symbolisés par des demi-flèches.
  • message dérobant : le message est mis en attente dans une liste d'attente de traitement chez le récepteur.

Le langage permet de décaler l'envoi et la réception des messages, pour montrer les délais de communication non négligeables. La plupart des ateliers UML ne prennent cependant pas en compte cette spécificité.

Cadres d'interaction[modifier | modifier le code]

Pour les cas plus complexes, on peut intégrer des algorithmes dans les diagrammes de séquences. Par le biais de cadres d'interaction, on peut préciser les spécificités d'un ensemble de messages :

  • alt : fragments multiple alternatifs (si alors sinon)
  • opt : fragment optionnel
  • par : fragment parallèle (traitements concurrents)
  • loop : le fragment s'exécute plusieurs fois
  • region : région critique (un seul thread à la fois)
  • neg : une interaction non valable
  • ref : référence à une interaction dans un autre diagramme
  • sd : fragment du diagramme de séquence en entier

Liens externes[modifier | modifier le code]