L'ensemble des éléments de ce TP a été rédigé par Bruyat Alexandre


Le diagramme de séquence permet de représenter les différentes interactions entre les acteurs et le système dans un ordre chronologique, c'est à dire une description précise d'un cas d'utilisation. Pour représenter ces interactions nous devons obligatoirement avoir un ou plusieurs scénarii à analyser.
On part donc d'un scénario et d'une liste d'acteurs (TP n°1), on va représenter à gauche l'acteur principal et les acteurs secondaires à sa droite. Les messages seront représentés par des flèches entre ces acteurs. Le temps s'écoule verticalement. Je vous propose de regarder l'image ci-dessous pour mieux comprendre :

  • Connaitre les éléments essentiels d'un diagramme de séquence
  • Réaliser un diagramme de séquence grâce à un scénario
  • Un acteur : il va intervenir sur une action (la démarrer, la stopper...), il est extérieur au système
  • Les messages :
    • simples : l'émetteur envoie un message au récepteur
    • de retours : ils permettent une réponse à un message précédement reçu (ils sont représentés en pointillés)
  • Cadres d'interaction :
    • loop : fragment qui va se répéter
    • opt : fragment optionnel
    • alt : fragments multiples alternatifs
    • ref : référence à un autre diagramme

Reprenons l'exemple du smart garage pour que l'on puisse poursuivre l'analyse complète avec le diagramme de séquence.

Le scénario :

Le mécanicien présente son badge devant le lecteur de badge. Celui-ci se connecte à l'application qui vérifie auprès du gestionnaire des comptes, que cet employé est autorisé à accéder au système. Si c'est le cas, l'application salue le mécanicien par son nom et son prénom.
Le mécanicien présente le badge associé à la voiture devant le lecteur de badge. Celui-ci se connecte à l'application et demande au gestionnaire des voitures quelle voiture est associée à ce badge, puis à la voiture quelle est la réparation en cours. L'application affiche alors la réparation en cours. Le mécanicien sélectionne la fin de la réparation. Elle est automatiquement enregistrée comme terminée. Le mécanicien est averti que l'action a bien été enregistrée.

Les acteurs et objets

En gras nous allons mettre en avant tous les acteurs et/ou objets que nous allons devoir représenter dans notre diagramme de séquence :

Le mécanicien présente son badge devant le lecteur de badge. Celui-ci se connecte à l'application qui vérifie auprès du gestionnaire des comptes, que cet employé est autorisé à accéder au système. Si c'est le cas, l'application salue le mécanicien par son nom et son prénom.
Le mécanicien présente le badge associé à la voiture devant le lecteur de badge. Celui-ci se connecte à l'application et demande au gestionnaire des voitures quelle voiture est associée à ce badge, puis à la voiture quelle est la réparation en cours. L'application affiche alors la réparation en cours. Le mécanicien sélectionne la fin de la réparation. Elle est automatiquement enregistrée comme terminée. Le mécanicien est averti que l'action a bien été enregistrée.

Nous avons maintenant les principaux acteurs/objets (certains ne sont peut-être pas cités clairement dans le scénario cependant on peut en avoir besoin) qui entrent en jeu dans ce scénario, on peut donc les représenter :


Les messages

Nous allons maintenant analyser partie par partie le scénario pour ajouter les messages entre les acteurs et objets

Le mécanicien présente son badge devant le lecteur de badge.

Rien de difficile ici, les acteurs sont cités clairement et le message aussi, on a donc :

Celui-ci se connecte à l'application qui vérifie auprès du gestionnaire des comptes que cet employé est autorisé à accéder au système.

On identifie 3 messages : la connexion, la vérification et enfin le message de confiration d'authentification.

Si c'est le cas, l'application salue le mécanicien par son nom et son prénom.

Le si est très important, il nous indique que l'on a plusieurs possibilités donc un cadre d'interaction "alt".

Le mécanicien présente le badge associé à la voiture devant le lecteur de badge.
Celui-ci se connecte à l'application et demande au gestionnaire des voitures quelle voiture est associée à ce badge, puis à la voiture quelle est la réparation en cours.

6 messages à ajouter pour cette phrase ; la connexion à l'application, la demande au gestionnaire des voitures, la réponse, la demande des réparations à la voiture et la réponse(vers l'application puis vers le mécanicien). Mais un problème se pose, nous n'avions pas créé l'objet voiture cependant ici nous en avons besoin ; nous l'ajoutons donc à côté des autres.

Le mécanicien sélectionne la fin de la réparation. Elle est automatiquement enregistrée comme terminée. Le mécanicien est averti que l'action a bien été enregistrée.

Ci-dessus vous avez donc mon diagramme de séquence final, ce n'est pas la seule réponse possible ; chacun peut interpréter le scénario à sa manière.

Pour pouvoir créer un diagramme de séquence on a juste besoin d'un scénario. Nous allons d'abord identifier les acteurs et objets qui entrent en jeu puis ajouter les messages au fur et à mesure de la lecture du scénario. Attention cependant, certains acteurs ne seront pas cités explicitement, à vous de les trouver !

  • La suite de message doit forcement commencer par un acteur externe au système, le système ne peut pas déclencher un message.
    Exemple de ce qu'il ne faut absolument pas faire :
  • Attention il faut représenter les messages dans un ordre chronologique de haut en bas !
    Exemple de ce qu'il ne faut absolument pas faire :