Génie Logiciel
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.


ce site est constituée pour les étudiants de la formation génie logiciel du département d'informatique université mentouri constantine
 
AccueilDernières imagesRechercherS'enregistrerConnexion
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

 

 ACOO1-Chap4

Aller en bas 
AuteurMessage
LEON12
Admin
LEON12


Messages : 182
Date d'inscription : 26/09/2010
Age : 35

ACOO1-Chap4 Empty
MessageSujet: ACOO1-Chap4   ACOO1-Chap4 Icon_minitimeMar 12 Oct - 3:18

Chapitre 4
Diagrammes UML
Vue Dynamiques
1. Diagrammes d’interaction
1.1 Introduction
Les diagrammes d’interaction permettent d’établir un lien entre les diagrammes de cas
d’utilisation et les diagrammes de classes : ils montrent comment des objets (instances de classes)
communiquent pour réaliser une certaine fonctionnalité. Ils modélisent des aspects dynamiques
du système. Généralement, un diagramme d’interaction correspond à un cas d’utilisation.
Les éléments essentiels d’un diagramme d’interaction sont les objets, les acteurs et les messages.
Les actions entre objets et acteurs sont principalement: envoi de messages, création et
destruction d’objets.
Deux types de diagramme d'interaction :
– diagramme de séquence
– diagramme de collaboration
Une même interaction peut être présentée aussi bien par l’un que par l’autre.
1.2 Diagramme de séquence
Un diagramme de séquence décrit la séquence temporelle des échanges de messages entre les
objets et l’acteur pour réaliser une certaine tâche.
Un diagramme de séquence montre quels sont les objets qui participent à l’exécution d’un cas
d’utilisation et quels sont les messages qu’ils échangent d’un point de vue temporel.
Les diagrammes de séquence privilégient ainsi la représentation temporelle à la représentation
spatiale et sont plus aptes à modéliser les aspects dynamiques du système.
Notation :
Le diagramme de séquence permet de visualiser les messages par une lecture de haut en bas.
− L’axe vertical représente le temps,
− l’axe horizontal les instances qui collaborent.
− Une ligne de vie (ligne verticale en pointillé) est attachée à chaque instance et représente sa
durée de vie.
 Instances
– Un diagramme de séquence met en oeuvre des instances (instance de classe, instance
d’acteur) sur l’axe horizontal
– l’activité d’une instance se voit sur sa ligne de vie grâce à une bande rectangulaire
verticale appelée bande d’activation de l’instance.
Exp : Cas d’un système de pilotage
 Messages
Un message, représenté par une flèche étiquetée par le nom de l’opération ou du signal
invoqué (une interruption ou un évènement sont de bons exemples de signaux), définit
une communication particulière entre des lignes de vie. Il peut être synchrone ou
asynchrone :
− Synchrone : l’émetteur reste bloqué le temps que le récepteur traite le message
envoyé Ce type de message est représenté par :
Un message de retour sera représenté avec des traits en pointillés
− Asynchrone : l’émetteur n’est pas bloqué lorsque le récepteur traite le message
envoyé. Un tel message est représenté par :
Syntaxe générale d’un message :
[ ’[’condition’]’ [ *[||] ’[’itération’]’ ] :] [résultat :=] message([paramètres])
La syntaxe de réponse à un message est la suivante :
[<attribut> = ] message [ : <valeur_de_retour>]
condition est une condition optionnelle sous forme d’expression booléenne.
itération spécifie (en langage naturel, entre crochets) l’envoi séquentiel (ou en parallèle,
avec ||). On peut omettre cette spécification et ne garder que le caractère "*" (ou "*||")
pour désigner un message récurrent envoyé un certain nombre de fois.
Résultat est la valeur de retour du message, qui sera par exemple transmise en paramètre
à un autre message.
messsage est le nom du message.
paramètres désigne les paramètres (optionnels) du message.
Bande d’activation Ligne de vie
Exp :
Catégories de message :
− Message d’appel (ou flot de contrôle emboîté)
L’invocation d’une opération est le type de message le plus utilisé en programmation
objet. L’invocation peut être asynchrone ou synchrone. Dans la pratique, la plupart
des invocations sont synchrones.
L’objet A récupère le contrôle quand l’objet B a fini sa tâche.
− Message d’envoie (flot de contrôle plat)
Un message d’envoie envoie un signal à un objet : message asynchrone. Il indique la
progression vers la prochaine étape d’une séquence.
− Message de création
Une instance peut créer une autre instance grâce à un message de création. La création
d’un objet est matérialisée par une flèche qui pointe sur le sommet d’une ligne de vie.
− Message de destruction
Une instance peut détruire une autre instance grâce à un message de destruction.
A: B:
*[i:=1..n]Msg
A: B:
Message()
A: B:
Message()
Remarques :
− UML permet de séparer clairement l’envoi du message, sa réception, ainsi que le début
de l’exécution de la réaction et sa fin.
− Dans la plupart des cas, la réception d’un message est suivie de l’exécution d’une
méthode d’une classe.
− Un message peut être récursif. L’envoi de messages récursifs se représente par un
dédoublement de la bande d’activation.
− Un objet peut envoyer un message à lui-même (cas d’un objet composite) : appel
reflexif.
Evénement d’envoi
Evénement de fin
d’exécution
Evénement de début
d’exécution
A:
A:
Représentation des itérations et des alternatives :
: Itération (le pseudo-code peut
être while x loop end loop
: Itération
: Alternative
: Alternative
a :A b :B c :C
[X]message
[notX]message
− Avec la notation de UML 2.x, les alternatives ou les itérations peuvent être
représentées en utilisant des frames.
Limites des diagrammes de séquence : comment faire apparaître des opérations non
séquentielles ?
1.3 Diagramme de collaboration
Le diagramme de collaboration permet de mettre en évidence les interactions entre les
différents objets du système. Une interaction montre le comportement d’une collaboration d’un
groupe d’instances en se focalisant sur l’échange d’informations entre les éléments de la
collaboration. Contrairement à un diagramme de séquence, un diagramme de collaboration rend
compte de l’organisation spatiale des participants à l’interaction.
Un diagramme de collaboration est une extension d’un diagramme d’objets.
Il peut être utilisé dans le cadre de l’analyse,
- pour préciser le contexte dans lequel chaque objet évolue
- pour mettre en évidence les dépendances entre les différents objets impliqués dans
l’exécution d’une opération ou d’un cas d’utilisation.
Notations :
Un diagramme de collaboration fait apparaître les interactions entre des objets et les
messages qu’ils échangent.
 Instances et liens de communication: Un lien montre l’envoie d’un message d’une
instance à une autre. Il représente une instance d’une association. Les relations entre les
instances (acteurs ou objets) sont appelées connecteurs et se représentent par un trait plein
reliant les instances.
 Interactions : Une interaction définit la communication entre les objets sous la
forme d’un ensemble partiellement ordonné de messages.
Exp :
 Messages : les messages sont généralement ordonnés selon un numéro de séquence
croissant. La syntaxe des messages est la même que pour un diagramme de séquence
excepté deux points :
– la direction du message est spécifiée par une flèche supplémentaire au dessus du
connecteur reliant les objets.
– On numérote les messages par envoi et sous envoi désignés par des chiffres séparés par
des points : ainsi l’envoi du message 1.4.3 est antérieur à celui du message 1.4.4 mais
postérieur à celui du message 1.3.5. La simultanéité d’un envoi est désignée par une lettre
les messages 1.6.a et 1.6.b sont envoyés en même temps.
La séquence permet de préciser l’ordre d’émission des messages.
Exp :
Syntaxe générale :
[ ’[’condition’]’ [séquence] [ *[||] ’[’itération’]’ ] :] [résultat :=] message([paramètres])
Certains messages peuvent solliciter un résultat. Ce cas peut être modélisé de 2 façons :
- un message de demande et un message de réponse
- indiquer sur le premier message le résultat attendu (lorsque le message en retour est attendu
immédiatement)
Le message de réponse peut être représenté par une flèche en trait discontinu.
Revenir en haut Aller en bas
http://gl-constantinois.dust.tv
 
ACOO1-Chap4
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» ACOO1-Chap4-DS
» ACOO1-chap1
» ACOO1-Chap3-1
» ACOO1-Chap3-2
» ACOO1-Chap3-3

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Génie Logiciel :: 2éme LMD GL :: SEMESTRE 3 :: ACOO1-
Sauter vers: