Diagrammes de séquence
Les diagrammes de séquence visualisent comment les objets interagissent au fil du temps. Ils montrent l'ordre des messages échangés entre les participants pour accomplir une tâche ou un scénario spécifique.
Concepts fondamentaux
Participants
Les participants représentent les objets ou les acteurs impliqués dans l'interaction. Chaque participant possède une ligne de vie — une ligne verticale en pointillés qui s'étend vers le bas et représente le temps.
Messages
Les messages sont les communications entre les participants, représentés par des flèches horizontales entre les lignes de vie. Le temps s'écoule de haut en bas.
Barres d'activation
Les barres d'activation (également appelées spécifications d'exécution) sont de fins rectangles sur une ligne de vie qui montrent quand un participant est en train de traiter activement.
Créer des participants
Utiliser l'outil Participant
Appuyez sur P pour activer l'outil Participant, puis cliquez sur le canevas pour placer les participants.

Types de participants
Les participants peuvent représenter différents types d'entités :
- Acteur - Un utilisateur ou un système externe (icône bonhomme)
- Objet - Une instance d'une classe (rectangle)
- Composant - Un composant système (rectangle avec stéréotype)
- Frontière - Interface utilisateur ou frontière système
- Contrôle - Logique de processus ou de contrôleur
- Entité - Données ou objet du domaine
Configurez le type de participant dans le panneau Inspecteur.
Créer des messages
Utiliser l'outil Message
Appuyez sur M pour activer l'outil Message, puis :
- Cliquez sur la ligne de vie du participant source
- Faites glisser vers la ligne de vie du participant cible
- Relâchez pour créer le message
Types de messages
| Type | Style de flèche | Description |
|---|---|---|
| Synchrone | Ligne pleine, flèche pleine | L'expéditeur attend la réponse |
| Asynchrone | Ligne pleine, flèche ouverte | L'expéditeur continue sans attendre |
| Retour | Ligne en pointillés, flèche ouverte | Réponse à un appel synchrone |
| Création | Ligne en pointillés, flèche ouverte vers boîte | Crée un nouveau participant |
| Destruction | Ligne terminée par un X | Met fin à un participant |

Étiquettes de messages
Double-cliquez sur un message pour éditer son étiquette. Formats courants :
methodName()- Appel de méthode simplemethodName(param1, param2)- Appel avec paramètresresult := methodName()- Appel avec affectation de retour[condition] methodName()- Message conditionnel (garde)
Barres d'activation
Les barres d'activation montrent la période pendant laquelle un participant exécute ou attend une réponse.
Ajouter des barres d'activation
- Sélectionnez un message
- Dans l'Inspecteur, activez « Afficher l'activation »
- La barre d'activation apparaît sur la ligne de vie du participant récepteur
Activations imbriquées
Lorsqu'un participant s'appelle lui-même (appel récursif) ou gère plusieurs appels imbriqués, les barres d'activation peuvent être empilées.

Fragments
Les fragments regroupent des messages pour montrer la logique conditionnelle, les boucles ou d'autres flux de contrôle.
Types de fragments
| Type | Mot-clé | Objectif |
|---|---|---|
| Alternative | alt | Branchement si-sinon |
| Option | opt | Exécution optionnelle (si sans sinon) |
| Boucle | loop | Exécution répétée |
| Rupture | break | Sortie de la boucle englobante |
| Parallèle | par | Exécution concurrente |
| Critique | critical | Section atomique/critique |
Créer des fragments
- Sélectionnez les messages que vous souhaitez regrouper
- Faites un clic droit et choisissez « Ajouter un fragment » ou utilisez l'outil Fragment
- Sélectionnez le type de fragment
- Ajoutez les conditions/gardes selon les besoins

Gardes de fragments
Les gardes sont des conditions affichées entre crochets :
[x > 0]- Condition numérique[user.isAdmin]- Vérification de propriété[else]- Branche par défaut/sinon dans les fragments alt
Réordonner les éléments
Déplacer les participants
Faites glisser les participants horizontalement pour les réordonner. Les messages connectés suivront.
Déplacer les messages
Faites glisser les messages verticalement pour changer leur ordre dans la séquence. Cela affecte le timing/l'ordre de l'interaction.
Bonnes pratiques
- Commencez par le flux principal - Modélisez le scénario nominal d'abord, puis ajoutez les alternatives
- Gardez la lisibilité - Limitez-vous à 5-7 participants par diagramme
- Utilisez des noms significatifs - Étiquetez les messages avec les vrais noms de méthodes ou des descriptions
- Montrez les messages de retour - Surtout pour les appels synchrones où la valeur de retour est importante
- Utilisez les fragments avec parcimonie - Trop de fragments imbriqués réduisent la lisibilité
- Ajoutez des notes - Utilisez des éléments de note pour expliquer la logique complexe
Exemple : Flux de connexion utilisateur
Un scénario de connexion typique pourrait inclure :
- L'utilisateur saisit ses identifiants
- Le Client envoie une requête de connexion au Serveur
- Le Serveur valide avec la Base de données
- La Base de données retourne l'enregistrement utilisateur
- Le Serveur crée une session
- Le Serveur retourne le succès/l'échec au Client
- Le Client met à jour l'interface
Ce flux démontre les appels synchrones, les messages de retour et les fragments alt potentiels pour les chemins de succès/échec.