Diagramme de séquences
  • Objectifs:
    • Ce type de diagramme permet de représenter des collaborations entre objets selon un point de vue temporel, on y met l'accent sur la chronologie des envois de messages.
    • Il doit montrer l'échange de messages entre objets en fonction du temps.
    • Contrairement au diagramme de collaboration, on n'y décrit pas le contexte ou l'état des objets, la représentation se concentre sur l'expression des interactions.
  • Éléments de base:
    • Le diagramme a deux dimensions:
      • dimension verticale: temps
      • dimension horizontale: objets
    • L'ordre d'envoi d'un message est déterminé par sa position sur l'axe vertical du diagramme ; le temps s'écoule "de haut en bas" de cet axe.
    • La disposition des objets sur l'axe horizontal n'a pas de conséquence pour la sémantique du diagramme.

     

Exemple des types de messages dans un diagramme de séquences

 

Types de messages

  • message simple

    Message dont on ne spécifie aucune caractéristique d'envoi ou de réception particulière.

  • message minuté (timeout)

    Bloque l'expéditeur pendant un temps donné (qui peut être spécifié dans une contrainte), en attendant la prise en compte du message par le récepteur. L'expéditeur est libéré si la prise en compte n'a pas eu lieu pendant le délai spécifié.

  • message synchrone

    Bloque l'expéditeur jusqu'à prise en compte du message par le destinataire. Le flot de contrôle passe de l'émetteur au récepteur (l'émetteur devient passif et le récepteur actif) à la prise en compte du message.

  • message asynchrone

    N'interrompt pas l'exécution de l'expéditeur. Le message envoyé peut être pris en compte par le récepteur à tout moment ou ignoré (jamais traité).

  • message dérobant

    N'interrompt pas l'exécution de l'expéditeur et ne déclenche une opération chez le récepteur que s'il s'est préalablement mis en attente de ce message.

 

Exemple complet de diagramme de séquences