Académique Documents
Professionnel Documents
Culture Documents
Chapitre 3
II2-ENSI
DIAGRAMME DE
COMMUNICATION
2
DIAGRAMME DE
COMMUNICATION
Collaboration =
(1) Ensemble d’objets qui interagissent ensemble
pour réaliser une tâche commune
(2) Ensemble de liens (pertinents) existant entre ces
objets
3
DIAGRAMME DE
COMMUNICATION
Ils fournissent un second point de vue des aspects
dynamiques.
Ils correspondent à une synthèse de l’ensemble des
diagrammes objets et des diagrammes de séquences.
Valider les associations du diagramme de classe en les utilisant
comme support de transmission des messages du DS .
5
DIAGRAMME DE
COMMUNICATION
6
DIAGRAMME DE
COMMUNICATION
Eléments constitutifs:
Un contexte contenant les éléments mis en jeu durant l’opération :
Un acteur
Un ensemble d’objets, d’attributs et de paramètres
7
DIAGRAMME DE
COMMUNICATION
Exemple:
D.Classe
D.Communication
8
DIAGRAMME DE
COMMUNICATION
Les messages
Opérations
Réception d’événements
Le séquencement
Les séquences consécutives séquence imbriquée
origine:Point
message initiateur Multiplicité
1.1: position ( )
4
afficher ( )
:Carré :Segment
1 *(i=1..4):afficher ( )
numéro de séquence 1.2: position ( )
boucle
destination:Point
opération
9
DIAGRAMME DE
COMMUNICATION
1: n : = obtenirNom()
3 : destroy()
: Doyen
2: new ProfAgrégé(n)
:ProfAgrégé {new}
10
DIAGRAMME DE
COMMUNICATION
: cabine
4 : message
Objet 2 5 : message 3 : fermer
3 : message : porte
2 : allumer
Objet 3
: lumière
11
DIAGRAMME DE
COMMUNICATION
Exemple:
monter_étage(n)
:Ascenseur 1.2: actionner()
:Lumière
12
DIAGRAMME DE
COMMUNICATION
Récapitulons:
Buts :
1. Décrire l’interaction des objets entre eux
2. Illustrer les scénarios des use cases
3. Valider les choix d’analyse et de conception (prototypage)
1 : retraitBillets( )
1 : message : Client
x : ClasseA
: Menu
y : ClasseB [validation]
2 : message
3 : indentifier(numClient)
2 : afficher ( )
z : ClasseB
: Loggin
[Interrogation] 4.1 : accepter(numClient)
4.2 : refuser(numClient)
13
(1) (1) + (3)
DIAGRAMME DE
COMMUNICATION
1.1 : message1
y : ClasseB
x : ClasseA
choix entre message1.1 et message1.2
1.2 : message2 z : ClasseC
[* 1..n ] 1: message
x : ClasseA y : ClasseB message envoyé n fois
x : ClasseA
// 1: message
y : ClasseB
message envoyé en parallèle à
plusieurs instances de la classe B
a : = message
x : ClasseA y : ClasseB a récupère la valeur renvoyée par
l’exécution du message
14
DIAGRAMME DE
COMMUNICATION
Exercice 1/Série n°3: diagramme de séquence
Préposé aux
:Inscription :Professeur :Membre
inscriptions
AjoutPlage
Resultat
Confirmation(nom)
AjoutPlage(nom)
Facturation
Confirmation
15
DIAGRAMME DE
COMMUNICATION
Exercice 1/Série n°3: diagramme de communication
1. Requête(typeCours, nomProf)
2. Confirmation (nom)
Préposé aux
:Inscription
inscriptions
1.3. Résultat
1.1. VerifHoraire
1.2 Ajout Plage
2.1. Ajout Plage
2.2. Facturation
:Membre :Professeur
1.1.1 Verif
16
DIAGRAMME DE
COMPORTEMENT
17
DIAGRAMME D’ÉTAT-
TRANSITION
LA MODÉLISATION DU CYCLE
DE VIE DES OBJETS
18
DIAGRAMME D’ÉTATS-
TRANSITIONS
attribué_sur_abonnement
délai écoulé
Réservé
Réserver achète
19
DIAGRAMME D’ÉTATS-
TRANSITIONS
Principaux concepts:
20
DIAGRAMME D’ÉTATS-
TRANSITIONS
retourner() / livre.retourné(self)
Emprunté Sur les rayons
emprunter() / livre.emprunté(self)
22
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
est_retourné(e)
Ne peut être Peut être
emprunté emprunté
est_emprunté(e) [dernier exemplaire]
Exemple
Identification
inactif [identification_réussie]/
Sélection Initialiser_sélection()
choisir(siège) /
ajouter_à_sélection(siège)
clic_acheter
clic_annuler Confirmation
clic_recommencer
clic_confirmer
Vente
Entry / vendre()
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
Examen réussite
final Cours
échoué
échec
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
Projet de projet_terminé
semestre
fork join
Examen
réussite [note < 60]
final
Cours
échec échoué49
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
Sous-diagramme d‘état
Attente
commande
commande commande
Help
entry / afficher écran d’aide
exit / effacer écran d’aide
quitter
question /
show réponse
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
Etats historiques
Pseudo-État qui mémorise le dernier sous-état visité d’un état
composite
Graphiquement, il est représenté par un cercle contenant un H.
Une transition ayant pour cible l’état historique est équivalente
Récapitulons
Buts :
1. Illustrer les cas d’utilisation
vue synthétiue de la dynamiue regrouppe un ensemble de scénarios
Validation
requête entry : Validation
éteindre Attente
do : identifier
exit :
Interrogation
Non identifié / annuler de la base
identifié
connu inconnu
Payé / imprimer Attente Paie
OK Erreur
entry : afficher prix
Impayé / annuler
Etat composite
(1)
D I A G R A M M E D ’ É TAT S -
TRANSITIONS
point_mort arrière
Marche
Parking parking Point mort point_mort arrière
vitesse_inférieure vitesse_supérieure
Marche
avant 2
vitesse_supérieure
vitesse_inférieure
Marche
avant 3
DIAGRAMME
D’ACTIVITÉ
58
DIAGRAMME
D’ACTIVITÉS
59
DIAGRAMME
D’ACTIVITÉS
Utilité
60
DIAGRAMME
D’ACTIVITÉS
Particularités
Forme particulière de diagramme d’états où
Les états sont remplacés par des activités.
On ne s’intéresse pas aux états d’un objet, mais plutôt aux
62
DIAGRAMME
D’ACTIVITÉS
Principaux éléments de notation
Activité nom_activité
Transition
Barre de synchronisation
Branchement
Condition [ cond ]
63
DIAGRAMME
D’ACTIVITÉS
64
DIAGRAMME
D’ACTIVITÉS
Conditionelle
Chauffer Refroidir
•Etat de départ
•Etat de terminaison
[ ] [ ]
•Transition
•Transition
Alternative
65
DIAGRAMME
D’ACTIVITÉS
Synchronisation
Exemple :
Variante des diagrammes d’états-transition, organisé par rapport aux actions et destiné
à représenter le comportement interne d’une opération ou d’un cas d ’utilisation.
Chauffer Refroidir
« synchronisation »
67
DIAGRAMME
D’ACTIVITÉS
Itérative
exemple
69
DIAGRAMME
D’ACTIVITÉS
70
DIAGRAMME
D’ACTIVITÉS
Envoyer un courriel
de confirmation
71
DIAGRAMME
D’ACTIVITÉS
Exemple: Bibliothèque
Membre Libraire
[au travail]
Se préparer pour le
prochain membre
[fin travail] 72
DIAGRAMME
D’ACTIVITÉS
Récapitulons
Buts :
1. Décrire le comportement générique d’un use case
2. Décrire en détail le comportement d’une opération
Acteur 1 Acteur2
: activité
Interroger Activité
: sous base
Activité [ événement] processus
^base.identifier(numClient)
Objet : activité
Validation Etat
Objet : flux de [inconnu] [connu]
[état] contrôle Afficher
Objet retourner
: flux des faux OK
artefacts ^ecran.afficherOK( )
: mise en
parallèle
(1) + (3) : synchronisation
DIAGRAMME
D’ACTIVITÉS
81