Messages

Un message est un élément de diagramme UML (Unified Modeling Language) de séquence qui définit un type particulier de communication entre les instances d'une interaction. Il transmet des informations d'une instance (représentée par une ligne de vie) à une autre dans une interaction.

Un message indique l'expéditeur et le destinataire et définit le type de communication ayant lieu 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 :

Comme l'illustre la figure ci-dessous, un message s'affiche dans un cadre d'interaction sous la forme d'une ligne avec 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).

Cadre d'interaction montrant une ligne de vie source et une ligne de vie 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 ou un signal implémentés par la ligne de vie cible. Vous pouvez nommer et classer les messages. L'apparence de la ligne ou de la flèche reflète les propriétés du message. Le tableau ci-dessous illustre la manière dont sont représentés graphiquement les messages dans les diagrammes de séquence.

Image Description Représentation
Ligne avec flèche pleine pointant vers la droite. Ligne avec flèche pleine pointant vers la ligne de vie réceptrice Cette image représente une opération d'appel synchrone dans laquelle le système attend la fin du flux de contrôle pour poursuivre avec le flux externe.
Ligne avec flèche ouverte pointant vers la droite. Ligne avec flèche ouverte Cette image représente un signal ou un appel asynchrones dans lesquels l'objet source envoie le message et passe immédiatement à l'étape suivante.
Ligne en pointillés avec flèche pleine pointant vers la gauche. Ligne en pointillés avec flèche pleine pointant vers la ligne de vie d'origine Cette image représente un 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équences :

Vous pouvez identifier des messages à l'aide d'un nom ou à l'aide d'une signature d'opération.

Type Exemple Description
Nom \Obtenir le mot de passe\ Un nom n'identifie que le nom du message. 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 est remplacé par celui de l'opération.
Signature obtenirMotdePasse Si une opération est associée à un message, vous pouvez afficher la signature de l'opération afin d'identifier le nom de cette dernière. Les signatures sont souvent utilisées dans des diagrammes 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 ses points d'envoi et de réception. 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 le montre l'illustration ci-dessous, un message biaisé s'affiche sous la forme d'une ligne avec flèche ouverte détenant plusieurs interactions qui se produisent entre les lignes de vie d'envoi et de réception.

Cadre d'interaction montrant une ligne de vie source et une ligne de vie 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.

Concepts associés
Lignes de vie
Tâches associées
Création de messages synchrones ou asynchrones
Ajout de messages de création ou de suppression dans des lignes de vie
Affectation d'opérations à des messages
Retardement de la réception de messages asynchrones
Personnalisation des options par défaut des messages dans les diagrammes UML de séquence
Affichage des signatures d'opérations et de messages dans les diagrammes UML de séquence
Conditions d'utilisation | Retours d'informations
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.