Vous êtes sur la page 1sur 63

UML

Diagramme de Séquence

Ahmed ZELLOU
ahmed.zellou@um6p.ma

UM6P, OIDL1, Janvier 2023.


Diagramme de Séquence
Plan
n Diagramme de Séquences
n Objets
n Ligne de vie des objets
n Les messages
n Étiquettes
n Contraintes
n Fragment combiné
n Conclusion

2
A.ZELLOU
Diagramme de Séquence
Définition
Diagramme de
Séquences n Le Diagramme de Séquences est un diagramme
dynamique d’UML qui décrit les interactions entre
Objets les objets qui composent le système.
Ligne de vie des n C’est une notation dérivée des “Object Message
objets
Sequence Charts” du Siemens Pattern Group.
Les messages n C’est une représentation concentrée sur la séquence
des interactions d’un point de vue temporel.
Étiquettes
n Une interaction se traduit par un envoi de message
Contraintes entre objets.

Fragment combiné

Conclusion

3
A.ZELLOU
Diagramme de Séquence
Définition
Diagramme de
Séquences n Les diagrammes de séquence présentent la
coopération entre différents objets par une séquence
Objets de messages entre eux.
Ligne de vie des n Les objets peuvent être connectés à des classes
objets
existantes ou créés indépendamment de toute classe.
Les messages n Si les objets sont connectés à des classes, les
messages peuvent être connectés à des opérations.
Étiquettes
n Adapté à la modélisation des aspects dynamiques des
Contraintes systèmes temps réels et des scénarios complexes
mettant en œuvre peu d’objets.
Fragment combiné

Conclusion

4
A.ZELLOU
Diagramme de Séquence
Définition
Diagramme de
Séquences n Les diagrammes de séquences permettent de faire
apparaître :
Objets
n Les objets intervenant dans l’interaction (acteurs
Ligne de vie des ou objets appartenant au système);
objets
n La description de l’interaction (messages);
Les messages
n Les interactions entre les intervenants
Étiquettes
(diagramme de séquences).
n Les diagrammes de séquences servent à
Contraintes
communiquer autant pour les usagers que pour les
développeurs.
Fragment combiné

Conclusion

5
A.ZELLOU
Diagramme de Séquence
Définition
Diagramme de
Séquences n Les principales informations contenues dans un
diagramme de séquence sont :
Objets
n Les messages échangés entre les lignes de vie,
Ligne de vie des présentés dans un ordre chronologique.
objets
n Le temps est représenté explicitement par une
Les messages dimension (la dimension verticale) et s’écoule de
haut en bas.
Étiquettes

Contraintes

Fragment combiné

Conclusion

6
A.ZELLOU
Diagramme de Séquence
Définition
Diagramme de
Séquences n Exemple
Objets

Ligne de vie des


objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

7
A.ZELLOU
Diagramme de Séquence
Objet
Diagramme de
Séquences n Dans UML, les objets sont représentés comme suit :
Objets

Ligne de vie des


objets

Les messages

Étiquettes
n Le nom de l’objet est composé de son rôle (rôle ou
nom) et/ou du nom de la classe instanciée (classe).
Contraintes n Le nom est souligné pour indiquer qu’il s’agit d’une
instance.
Fragment combiné

Conclusion

8
A.ZELLOU
Diagramme de Séquence
Objet
Diagramme de
Séquences n Création et destruction d’instance :
Objets
n La création d’un objet est matérialisée par une
flèche qui pointe sur le sommet d’une ligne de
Ligne de vie des vie.
objets
n La destruction d’un objet est matérialisée par une
Les messages croix qui marque la fin de la ligne de vie de
l’objet (×).
Étiquettes

Contraintes

Fragment combiné

Conclusion
n La destruction d’un objet n’est pas
nécessairement consécutive à la réception d’un
9
message.
A.ZELLOU
Diagramme de Séquence
Ligne de Vie
Diagramme de
Séquences n Ligne de vie des objets :
Objets
n Elle est représentée par une ligne verticale en
dessous des objets.
Ligne de vie des
objets
n Elle représente la période de temps durant
laquelle l’objet “existe”.
Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

10
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Un message définit une communication particulière
entre des lignes de vie.
Objets
n Les objets communiquent en échangeant des
Ligne de vie des messages représentés sous forme de flèches.
objets
n Les messages sont étiquetés par le nom de
Les messages l’opération ou du signal invoqué.

Étiquettes

Contraintes

Fragment combiné

Conclusion

11
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n L’ordonnancement horizontal des messages n’a
aucune signification.
Objets
n La dimension verticale représente l’écoulement du
Ligne de vie des temps.
objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

12
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n UML sépare clairement l’envoi du message, sa
réception, ainsi que le début de l’exécution de la
Objets réaction et sa fin.
Ligne de vie des
objets

Les messages

Evénement
Étiquettes
d‘envoie début
Contraintes d’exécution

Fragment combiné
fin
Conclusion
d’exécution
Evénement
de réception 13
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Activation des objets :
Objets
n Une période d’activité correspond au temps
pendant lequel :
Ligne de vie des
objets
n Un objet effectue une action directe ou
indirecte.
Les messages
n Représentation : bande verticale le long de la
Étiquettes
ligne de vie de l’objet.

Contraintes

Fragment combiné

Conclusion

14
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Messages Asynchrones : signaux
Objets
n Ils n’attendent pas de réponse.
n Ils ne bloquent pas l’émetteur.
Ligne de vie des
objets n L’émetteur ne peut pas savoir si le message
arrivera à destination.
Les messages
n Une interruption ou un évènement sont de bons
Étiquettes exemples de signaux.
Contraintes n Se représente graphiquement par une flèche en
traits pleins et à l’extrémité ouverte de l’émetteur
Fragment combiné vers le récepteur.
Conclusion

15
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Messages Asynchrones
Objets

Ligne de vie des


objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

16
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Messages Synchrones
Objets
n L’émetteur reste alors bloqué le temps que dure
l’invocation de l’opération.
Ligne de vie des
objets
n L’invocation d’une opération est le type de
message synchrone le plus utilisé.
Les messages
n Se représente graphiquement par une flèche en
Étiquettes
traits pleins et à l’extrémité pleine.
n Ce message peut être suivi d’une réponse qui se
Contraintes
représente par une flèche en pointillé.
Fragment combiné

Conclusion

17
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Messages Synchrones
Objets

Ligne de vie des


objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

18
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Message perdu et trouvé
Objets
n Un message complet est tel que les événements
d’envoi et de réception sont connus.
Ligne de vie des
objets
n Un message perdu si l’événement d’envoi est
connu, mais pas l’événement de réception.
Les messages
n Il se représente par une flèche qui pointe sur
Étiquettes
une petite boule noire.
n Un message trouvé si l’événement de réception
Contraintes
est connu, mais pas l’événement d’émission.
Fragment combiné n Il se représente par une flèche partante d’une
petite boule noire.
Conclusion

19
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Objet Actif/Passif :
Objets
n Un objet actif initie et contrôle le flux d’activités.
n Représenté graphiquement par un double trait
Ligne de vie des
objets
vertical.

Les messages

Étiquettes

Contraintes

Fragment combiné n Un objet passif a besoin qu’on lui donne le flux


d’activité pour pouvoir exécuter une méthode.
Conclusion
n Représenté graphiquement par un rectangle blanc
ou gris placé sur la ligne de vie en pointillée.20
A.ZELLOU
Diagramme de Séquence
Message
Diagramme de
Séquences n Exécutions Simultanées :
Objets
n Les exécutions simultanées sur une même ligne
de vie sont représentées par un rectangle
Ligne de vie des chevauchant.
objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

21
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages :
Objets
n Les étiquettes décrivent les messages auxquels
elles sont attachées.
Ligne de vie des
objets
n Syntaxe générale:
n [’[’garde’]’] [itération] [résultat :=] nom
Les messages
message [’(’arguments’)’]
Étiquettes n garde : condition booléenne et optionnelle
(représentée entre crochets) autorisant ou non
Contraintes
l’envoi d’un message.
Fragment combiné n nom message : nom de l’opération invoquée par
l’intermédiaire de ce signal.
Conclusion

22
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Itération:
Objets
n Itération séquentielle : envoi séquentiel de n
instances du même message.
Ligne de vie des
objets
n Syntaxe : *[ clause d’itération ]
n Itération parallèle : envoi parallèle de n instances
Les messages
du même message.
Étiquettes n Syntaxe : *||[ clause d’itération ]
Contraintes

Fragment combiné

Conclusion

23
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Arguments :
Objets
n Un message peut transmettre des arguments à une
méthode.
Ligne de vie des
objets
n Les argument forment une liste des paramètres du
message, séparés par des virgules.
Les messages
n Les arguments peuvent contenir des valeurs
Étiquettes
retournées par des messages envoyés
précédemment.
Contraintes
n Ces arguments plus le nom de l’action
déterminent sans ambiguïté l’action à réaliser.
Fragment combiné
n Exemples :
Conclusion
n CalculerSalaire(E) – calcule le salaire de
24
l’Employé E.
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Résultats:
Objets
n Le résultat est constituée d’une liste de valeurs
retournées par le message.
Ligne de vie des
objets
n Syntaxe : [<attribut> = ] message [ : <valeur_de_retour>]
où message représente le message d’envoi.
Les messages

Étiquettes
zellou:Adhérent :Médiatèque

Contraintes

Fragment combiné chercherLivre ("XML")

Conclusion
Livres := chercherLivre ("XML")
25
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Retour Explicite :
Objets
n Dans le cas d’un système concurrent, il est utile
d’expliciter la fin de l’exécution de sous-
Ligne de vie des procédures.
objets
n On utilise une flèche pointillée (déjà utilisée dans
Les messages le cadre des valeurs retournées).
Étiquettes
:Client :Serveur :Client :Serveur

Contraintes requête () requête ()

Fragment combiné
Rep := requête () X
Rep := requête ()
Conclusion

26
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Appel Récursif :
Objets
n L’envoi de messages récursifs se représente par
un dédoublement de la bande d’activation.
Ligne de vie des
objets
n L’objet apparaît alors comme s’il était actif
plusieurs fois.
Les messages
:Commande
Étiquettes getDetail () getDateCde()

Contraintes

Fragment combiné

Conclusion

27
A.ZELLOU
Diagramme de Séquence
Étiquettes
Diagramme de
Séquences n Étiquettes des messages - Réflexivité:
Objets
n Un objet peut s’envoyer un message.
n Cette construction peut indiquer un point d’entrée
Ligne de vie des
objets
dans une activité de plus bas niveau.

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

28
A.ZELLOU
Diagramme de Séquence
Contraintes
Diagramme de
Séquences n Contraintes temporelles:
Objets
n Pour modéliser les délais de transmission non
négligeables, on utilise les deux notations
Ligne de vie des suivantes :
objets
n une flèche oblique,
Les messages
n des notations temporelles dans la marge.
Étiquettes

Contraintes

Fragment combiné

Conclusion

29
A.ZELLOU
Diagramme de Séquence
Contraintes
Diagramme de
Séquences n Structures de contrôle: Boucles
Objets
n Modélisation des structures de contrôles itératives
n par pseudo-code (while X loop end loop)
Ligne de vie des
objets n par condition d’itération (*[X]) sur le
message lui même.
Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

30
A.ZELLOU
Diagramme de Séquence
Contraintes
Diagramme de
Séquences n Structures de contrôle: Conditions
Objets
n Modélisation des structures de contrôles
conditionnelles,
Ligne de vie des
objets
n Chez l’expéditeur d’un message :
n par pseudo-code (if X else end if)
Les messages
n par garde ([X])
Étiquettes
n Chez le destinataire d’un message :
Contraintes n par duplication de la ligne de vie.
Fragment combiné

Conclusion

31
A.ZELLOU
Diagramme de Séquence
Contraintes
Diagramme de
Séquences n Structures de contrôle: Conditions
Objets

Ligne de vie des


objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

32
A.ZELLOU
Diagramme de Séquence
Contraintes
Diagramme de
Séquences n Structures de contrôle: Conditions
Objets

Ligne de vie des


objets

Les messages

Étiquettes

Contraintes

Fragment combiné

Conclusion

33
A.ZELLOU
Diagramme de Séquence

Fragments Combinés

34
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné
Objets
n Représente des articulations d’interactions.
n Permet de décrire des diagrammes de séquence de
Ligne de vie des
objets
manière compacte.
n Défini par un opérateur et des opérandes.
Les messages
n Il existe dix opérateurs définis dans la notation
Étiquettes UML 2.0.
Contraintes n Les fragments combinés peuvent faire intervenir
l’ensemble des entités participant au scénario ou
Fragment juste un sous-ensemble.
combiné

Conclusion
35
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné
Objets
n Représenté graphiquement par un rectangle dont
le coin supérieur gauche contient un pentagone.
Ligne de vie des
objets
n Dans le pentagone figure le type de la
combinaison, appelé opérateur d’interaction.
Les messages
n Les opérandes d’un opérateur d’interaction sont
Étiquettes
séparés par une ligne pointillée.
n Les conditions de choix des opérandes sont
Contraintes
données par des expressions booléennes entre
crochets ([ ]).
Fragment
combiné

Conclusion
36
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné
Objets
n Les opérateurs de choix et de boucle : alternative,
option, break et loop ;
Ligne de vie des
objets
n Les opérateurs contrôlant l’envoi en parallèle de
messages : parallel et critical region ;
Les messages
n Les opérateurs contrôlant l’envoi de messages :
Étiquettes
ignore, consider, assertion et negative ;

Contraintes

Fragment
combiné

Conclusion
37
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné : Opérateur "Alternative"
Objets
n L'opérateur "alt" désigne un choix, une
alternative.
Ligne de vie des
objets
n Il représente deux comportements possibles :
équivalent à SI...ALORS...SINON.
Les messages
n La condition d'exécution d'une des deux branches
Étiquettes
peut être explicite ou implicite.
n L'utilisation de l'opérateur else permet d'indiquer
Contraintes
que la branche est exécutée si la condition du alt
est fausse.
Fragment
combiné

Conclusion
38
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné : Opérateur "Alternative"
Objets
n Exemple : vérification d’une note saisie par un
professeur.
Ligne de vie des
objets
n Soit la note est supérieure ou égale à 10, ce
qui appellera le diagramme de séquence
Les messages valider matière,

Étiquettes
n Soit la note est inférieure à 10, ce qui
appellera le diagramme de séquence
Contraintes compenser matière,

Fragment
combiné

Conclusion
39
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n I : "Alternative"
Séquences
deliberer

Objets
zellou:Enseignant
Ligne de vie des fournirNote( )
objets :Note

alt [note >= 10]


Les messages
ref validerMatiere
Étiquettes

else [note < 10]


Contraintes

ref compenserMatiere
Fragment
combiné

Conclusion
40
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné : Opérateur "Option"
Objets
n L'opérateur "opt" désigne un fragment combiné
optionnel.
Ligne de vie des
objets
n Il représente un comportement qui peut se
produire ou non.
Les messages
n Equivalent à un fragment "alt" qui ne posséderait
Étiquettes
pas d'opérande else (SI...ALORS).

Contraintes

Fragment
combiné

Conclusion
41
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n II : "Option"
Séquences
genererFact
Objets
:Facture :Client
getNomPrenom()
Ligne de vie des
objets
getAdresseLivraison()

Les messages
getTauxReduction()

Étiquettes taux:=getTauxReduction()

opt taux != 0
Contraintes
ref calculerReduction
Fragment
combiné
genererPDF( )
:PDF
Conclusion
42
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de
Séquences n Un fragment combiné : Opérateur "Break"
Objets
n L'opérateur "break" est utilisé dans les fragments
combinés qui représentent des scenarii
Ligne de vie des d'exception.
objets
n Les interactions de ce fragment seront exécutées à
Les messages la place des interactions normales.

Étiquettes
n Il y a donc une notion d'interruption du flot
"normal" des interactions.
Contraintes

Fragment
combiné

Conclusion
43
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n III : "Break"
Séquences
traitement
Objets

Ligne de vie des :System


objets zellou:User
déposerMessage()

Les messages

opt attacherPhoto()
Étiquettes
break [taillePhoto > taillemax]

Contraintes ref gererTailleLimitePhoto

Fragment
combiné

Conclusion
44
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Loop"
Objets
n L'opérateur "Loop" est utilisé pour décrire un
ensemble d'interaction qui s'exécutent en boucle.
Ligne de vie des
objets
n En général, une contrainte appelée garde indique
le nombre de répétitions (minimum et maximum)
Les messages ou bien une condition booléenne à respecter.

Étiquettes

Contraintes

Fragment
combiné

Conclusion
45
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n IV : "Loop"
Séquences
authentifier

Objets :Utilisateur :Application :LDAP

demanderLogin&Passe()
Ligne de vie des
verifier(login=“user”,pass=“aze”)
objets chek(login,pass)

rep:chek()
Les messages
loop[2] /* rep false */
Étiquettes demanderLogin&Passe()
verifier(login=“user”,pass=“aze”)
chek(login,pass)
Contraintes
rep:chek()
Fragment
combiné /* rep false */

blocker@IP()
Conclusion
46
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n IV : "Loop"
Séquences
commander

Objets :Utilisateur :Produit

Ligne de vie des loop[p in liste]


objets getListeProduits()

Les messages l:= getListeProduits()

getDetailProduit(p)
Étiquettes :Panier
d:=getDetailProduit()
mettreAuPanier(p,qte)
Contraintes
prixTotal:=mettreAuPanier(p,qte)
Fragment
combiné validerCommande()
:Commande

Conclusion validerCommande()
47
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Parallel"
Objets
n L'opérateur "par" est utilisé pour représenter des
interactions ayant lieu en parallèle.
Ligne de vie des
objets
n Les interactions des différents opérandes peuvent
donc se mélanger, s'intercaler, dans la mesure où
Les messages l'ordre imposé dans chaque opérande est respecté.

Étiquettes

Contraintes

Fragment
combiné

Conclusion
48
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n V : "Parallel"
Séquences
reserver
Objets

:Reservation RAM:Compagnie Airfra:Compagnie


Ligne de vie des
objets

Les messages par chercherVol(dep=“Rabat”,des=“Paris”)

ref traiterReponse
Étiquettes

Contraintes chercherVol(dep=“Rabat”,des=“Paris”)

ref traiterReponse
Fragment
combiné

Conclusion
49
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Critical"
Objets
n L'opérateur "Critical" désigne une section
critique.
Ligne de vie des
objets
n L'opérateur impose un traitement atomique des
interactions qu'il contient.
Les messages
n Une section critique permet d'indiquer que les
Étiquettes
interactions décrites dans cet opérateur ne
peuvent pas être interrompues par d'autres
Contraintes interactions décrites dans le diagramme.

Fragment
combiné

Conclusion
50
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n VI : "Critical"
Séquences
retirerArgent

Objets

:Client :Retrait :Compte


Ligne de vie des
objets
demanderRetrait(somme=300)
Les messages

critical verifierSolde()
Étiquettes

ref traiterOperation
Contraintes

Fragment
combiné

Conclusion
51
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Ignore"
Objets
n L'opérateur "Ignore" indique qu'il existe des
messages qui ne sont pas présents dans le
Ligne de vie des fragment combiné.
objets
n Ce sont des interactions que l'on ne prend pas en
Les messages compte.

Étiquettes
n Ces messages sont en fait des messages que l'on
peut qualifier d'insignifiants.
Contraintes

Fragment
combiné

Conclusion
52
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n VII : "Ignore"
Séquences
commander

Objets

:Client : Commande :Log


Ligne de vie des
objets
confirmerCommande()

Les messages ignore


tracerCommande()

Étiquettes
envoieMailConfirmation()

Contraintes

Fragment
combiné

Conclusion
53
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Consider"
Objets
n L'opérateur "Consider" désigne des interactions à
prendre en compte dans la séquence.
Ligne de vie des
objets
n On peut imaginer que ce genre de construction
Les messages soit plus particulièrement utilisé dans des profils
orientés tests.
Étiquettes

Contraintes

Fragment
combiné

Conclusion
54
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n VIII : "Consider"
Séquences
chater

Objets

:User : Message :User


Ligne de vie des
objets
posterMessage()

Les messages consider


notifierEnvoie()

Étiquettes
posterMessage()

Contraintes
consider
notifierEnvoie()
Fragment
combiné

Conclusion
55
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Assertion"
Objets
n L'opérateur "assert" indique que le fragment
combiné est une assertion.
Ligne de vie des
objets
n Une assertion désigne une proposition que l'on
avance et que l'on soutient comme vraie (non
Les messages prouvée).

Étiquettes

Contraintes

Fragment
combiné

Conclusion
56
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n IX : "Assertion"
Séquences
commander

Objets
:Client : Commande :Produit
Ligne de vie des
objets passerCommande()
verifierDisponibilite(p)
Les messages

qte: verifierDisponibilite()
Étiquettes
assert /* qte is not null */
Contraintes
ref validerCommande

Fragment
combiné

Conclusion
57
A.ZELLOU
Diagramme de Séquence
Diagramme De Séquence
Diagramme de
Séquences n Un fragment combiné : Opérateur "Negative"
Objets
n L'opérateur "neg" désigne un ensemble
d'interactions invalides.
Ligne de vie des
objets
n Dans l’exemple, on ne souhaite pas que
l'utilisateur puisse obtenir des billets avec un code
Les messages erroné et une somme demandée incorrecte.

Étiquettes

Contraintes

Fragment
combiné

Conclusion
58
A.ZELLOU
Diagramme de Séquence
Fragment Combiné
Diagramme de n X : "Negative"
Séquences
commander
Objets

:Client : Software
Ligne de vie des
objets demandeTelechargerSoftware()

Les messages

Étiquettes contrat: ddeAcceptationContrat()

neg /* contrat is null */


Contraintes
accesPageTelechargement()
Fragment
combiné

Conclusion
59
A.ZELLOU
Diagramme de Séquence
N.B.
Diagramme de
Séquences n Combiner les opérateurs
Objets
n Les opérateurs peuvent être combinés/mixés en
vue de décrire des comportements complexes.
Ligne de vie des
objets

Les messages

Étiquettes

Contraintes

Fragment
combiné

Conclusion
60
A.ZELLOU
Diagramme de Séquence
Conclusion
Diagramme de n Le Diagramme de Séquences est le premier
Séquences
diagramme dynamique d’UML.
Objets n Il décrit les interactions entre les objets qui
composent le système.
Ligne de vie des
objets
n C’est une représentation concentrée sur la séquence
des interactions d’un point de vue temporel.
Les messages
n Les diagrammes de séquence présentent la
Étiquettes coopération entre différents objets.
Contraintes n La coopération entre ces objets est représentée par
une séquence de messages entre eux.
Fragment combiné

Conclusion

61
A.ZELLOU
Diagramme de Séquence
Conclusion
Diagramme de n Les principales informations contenues dans un
Séquences
diagramme de séquence sont :
Objets n Les messages échangés entre les lignes de vie,
présentés dans un ordre chronologique.
Ligne de vie des
objets
n Le temps est représenté explicitement par une
dimension (la dimension verticale) et s’écoule de
Les messages
haut en bas.
Étiquettes n Les diagrammes de séquences permettent de faire
apparaître :
Contraintes
n Les objets intervenant dans l’interaction (acteurs
Fragment combiné ou objets appartenant au système);
Conclusion n La description de l’interaction (messages);
n Les interactions entre les intervenants. 62
A.ZELLOU
Diagramme de Séquence

Merci

Vous aimerez peut-être aussi