Académique Documents
Professionnel Documents
Culture Documents
Introduction
Les diagrammes d'UML
Diagramme
Diagramme Diagramme
de structure comportemental
Diagramme de Diagramme de
séquence communication
Diagramme vue
Diagramme
d’ensemble des
de timing
interactions
2
Diagrammes d'interaction
Introduction
Modéliser la façon dont les groupes d'objets collaborent
pour réaliser un comportement donné.
Diagramme de séquence
Montre les interactions entre objets selon un point de
vue temporel
Le contexte des objets n'est pas représenté
A : Objet B : Objet
3
Diagrammes d'interaction
Introduction
2: écrire
: Imprimante
: Traitement de texte
: Scanner
1: lire
4
Diagrammes d'interaction
Diagramme de séquence
Diagrammes de séquence
Concepts principaux :
1 Les participants (le plus souvent des objets)
Une ligne de vie
Des zones d’activation
2 Les messages
L’opération et éventuellement ses paramètres
Éventuellement son résultat
6
Diagrammes de séquence
Représentation des acteurs
temps
t
7
Diagrammes de séquence
Messages
Communication entre les lignes de vie
appel de méthode
démarre
9
Diagrammes de séquence
Un objet peut s'envoyer: objet
des messages
Message
réflexif
: objet
10
Diagrammes de séquence
Occurrence d'exécution
démarre
Focus
d'exécution
11
Diagrammes de séquence
Message trouvé = émetteur inconnu.
12
Diagrammes de séquence
Exemple
Créations
Destructions
13
Diagrammes de séquence
Exemple : distributeur de boisson
distributeur de boisson
14
Diagrammes de séquence
Invariants d'état
create("bob","glopglop")
verifierReferences(compte)
{compte.authentificationOk == true}
initialiserTransaction()
15
Diagrammes de séquence
Occurrences événementielles
:A :B
description
Action()
16
Diagrammes de séquence
Fragments combinés
condition de garde
Types :A
1 Opt
2 Loop nom [expression booléenne]
3 Alt
4 Break
5 Critique
6 Ref
7 ...
17
Diagrammes de séquence
Fragments combinés
Opt : Fragment parcouru si une condition est vérifiée
:A :B
Opt [condition]
Action()
18
Diagrammes de séquence
Fragments combinés
Loop : Répétition du fragment tant que la condition est vérifiée
:A :B
Loop [condition]
Action()
ou
Loop (0, n)
Action()
19
Diagrammes de séquence
Fragments combinés
Alt : Équivalent à la structure de contrôle "si .. alors .. sinon".
:A :B
Alt [condition]
ActionA()
[else]
ActionB()
20
Diagrammes de séquence
Fragments combinés
Break : Fragment exécuté et met fin au fragment englobant
:A :B
Break [condition]
Action()
21
Diagrammes de séquence
Fragments combinés
Critique : Fragment exécuté de façon atomique (d'un bloc)
:A :B
Critique [condition]
ActionCritique()
22
Diagrammes de séquence
Décomposition : mot clef "ref"
Méthode n°1
DiagA DiagB
:B
ref :B :C
:A
DiagB
Action()
Action() Action1()
Reponse() Reponse1()
Reponse()
23
Diagrammes de séquence
Décomposition : mot clef "ref"
Méthode n°2
DiagA SousFonction
:A :B :A :B
Ref Action()
SousFonction Reponse()
24
Diagrammes de séquence
Exercice : distributeur de boissons
25
Diagrammes d'interaction
Diag. de communication ou
de collaboration
Introduction
Les diagrammes d'UML
Diagramme
Diagramme Diagramme
de structure comportemental
Diagramme de Diagramme de
séquence communication
Diagramme vue
Diagramme
d’ensemble des
de timing
interactions
27
Diagrammes de communication
Objectif
28
Diagrammes de communication
Concepts
Objets / acteurs
Exemple :
1 : confirmerIdentité
2 : décoller
tourDeContrôle Fk74:Airbus
29
Diagrammes de communication
Exemples
x
A B
30
Diagrammes de communication
Exercice
Transformer ce diagramme de séquence en diagramme
de communication
Ouverture d'URL dans un navigateur web
chargeParams()
<<create>>
ecouter()
accepter()
31
Diagrammes de communication
Exemple : distributeur de boissons
: MachineDbB : G_Gobelet
Moi : Utilisateur
: G_Monnaie : G_Boisson
: Ecran
: Piece
Chocolat : Boisson
32