Messages

Dans les diagrammes de séquence, un message est un élément de modèle qui définit un type particulier de communication entre les participants d'une interaction. Un message transmet des informations d'un participant (représenté par une ligne de vie) à un autre dans une interaction.

Un message indique l'expéditeur et le destinataire et définit le type de communication que l'occurrence d'exécution répartit entre les lignes de vie. Par exemple, une communication peut appeler une opération à l'aide de synchCall ou d'asynchCall, émettre un signal à l'aide d'asynchSignal et créer ou supprimer un participant.

Trois types de messages peuvent composer un diagramme de séquence :

Un message représente soit l'appel d'une opération, soit l'envoi et la réception d'un signal. S'il représente une opération, ses arguments sont ceux de CallAction sur la ligne de vie d'envoi et ceux de CallEvent sur la ligne de vie de réception. S'il représente un signal, ses arguments sont ceux de SendAction sur la ligne de vie d'envoi et les arguments sont disponibles dans SignalEvent sur la ligne de vie de réception. Si le message est un appel synchrone, la ligne de vie appelée envoie un message avec accusé de réception à la ligne de vie appelante avant que cette dernière ne puisse poursuivre.

Comme l'illustre la figure ci-dessous, un message s'affiche dans un cadre d'interaction sous la forme d'une ligne avec une flèche pointant dans le sens d'envoi du message (de la fin du message d'envoi vers la fin du message de réception).

Un cadre d'interaction montre une ligne de vie source et cible. Un message de création couvre les lignes de vie source et cible, suivi d'un message synchrone, d'un message asynchrone et d'un message de suppression.

Le message que la ligne de vie source envoie à la ligne de vie cible représente une opération mise en place par la ligne de vie cible. Vous pouvez indiquer un nom et classer les messages. La présentation de la ligne ou de la pointe de flèche reflète les propriétés du message.

Graphique Description Représentation
Une ligne avec une pointe de flèche à trait plein pointe vers la droite. Ligne avec une pointe de flèche à trait plein pointant vers la ligne de vie de réception Une opération d'appel synchrone dans laquelle le système attend la fin du flux de contrôle avant de continuer avec le flux externe
Une ligne avec une pointe de flèche ouverte pointe vers la droite. Ligne avec une pointe de flèche ouverte Signal ou appel asynchrone dans lequel l'objet source envoie le message et passe immédiatement à l'étape suivante
Une ligne tiretée avec une pointe de flèche à trait plein pointe vers la gauche. Une ligne tiretée avec une pointe de flèche à trait plein pointant vers la ligne de vie d'origine Message avec accusé de réception provenant d'un appel à une procédure. Lorsque vous créez un message synchrone, un message avec accusé de réception est créé par défaut. Vous pouvez modifier cette valeur par défaut dans la fenêtre Préférences
Vous pouvez utiliser deux autres types de messages dans les diagrammes de séquence :

Vous pouvez identifier les messages par un nom ou par une signature d'opération.

Type Exemple Description
Nom \Obtenir le mot de passe\ Nom permet d'identifier uniquement le nom du message. Des noms simples sont souvent utilisés dans les diagrammes développés lors de la phase d'analyse car les messages sont identifiés par leurs responsabilités et non par leurs opérations. Par convention, le nom est placé entre deux barres obliques (\\) pour indiquer que le nom du message n'est associé à aucune opération. Si une opération est associée à un message, le nom de l'opération remplace le nom.
Signature obtenirMotdePasse Si une opération est associée à un message, vous pouvez afficher la signature de l'opération afin d'identifier son nom. Les signatures sont souvent utilisées dans des diagrammes développés lors de la phase de conception car elles offrent des caractéristiques utiles aux développeurs pour le codage de la conception.

Manipulation des messages asynchrones

Un message asynchrone est le seul type de message dans lequel vous pouvez déplacer individuellement le point d'envoi et le point de réception du message. Vous pouvez déplacer les points d'un message asynchrone entre des lignes de vie afin de manipuler le délai entre l'événement d'envoi et l'événement de réception. Le résultat est appelé message biaisé.

Comme l'illustre la figure ci-dessous, un message biaisé s'affiche sous la forme d'une ligne avec une pointe de flèche ouverte détenant plusieurs interactions se produisant entre les lignes de vie d'envoi et de réception.

Un cadre d'interaction montre une ligne de vie source et cible. Un message de création couvre les lignes de vie source et cible, suivi d'un message asynchrone commençant au niveau de la ligne de vie source et croisant verticalement deux messages synchrones. Le message se termine au niveau de la ligne de vie cible au-dessus d'un message de suppression.

L'événement d'envoi n'est pas bloqué et des interactions peuvent se produire entre le point de la ligne de vie d'envoi et celui de la ligne de vie de réception.

Tâches associées
Création de messages dans des diagrammes de séquence
Ajout de messages synchrones et asynchrones
Ajout de messages de création et de suppression
Retardement de la réception de messages asynchrones
Déplacement de messages synchrones
Réorganisation de messages
Suppression de messages
Reconnexion de messages
Affectation d'opérations à des messages
Personnalisation des paramètres de signature des messages pour les diagrammes de séquence UML
Affichage des signatures d'opération et de message dans les diagrammes de séquence UML
Conditions d'utilisation | Retours d'informations
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.