Title: Diagramme dinteractions
1Diagramme dinteractions
2Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario
3Collaboration
- Une application représente une sociétés dobjets.
- Chacun des objets jeussent des rôles spécifiques.
- Tous travaillant ensemble pour accomplir une
tâche qui est plus complexe que chacun des objets
pourrait accomplir par lui même.
4Collaboration
- Objets ne sont pas inerte, ils interagissent
entre eux en se passant des messages. - Un message est la spécification dune
communication entre deux objets qui séchangent
de linformation dans lattente quune action va
en résulter. - Laction résulte dans la computation dune
procédure (return value) - Laction peut engendrer un changement d état
chez lobjet receveur.
5Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario
6Structure vs Interaction
- Les diagrammes de structure fournissent une vue
statique dun model dun système - Diagramme de classes
- Diagramme dobjets
- Les diagrammes dinteraction (ou de comportement)
fournissent une vue dynamique dun model - Diagramme de collaboration
- Diagramme séquentiel
- Diagramme des cases dusage
7Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario
8Diagrammes de collaboration
- Un type de diagramme d'interaction.
- Consiste à une diagramme d objet auquel on
ajoute des messages.
9Diagrammes de collaboration (liens)
- Les liens indiquent linteraction entre les
objets. - Lorsquil a un lien, un objet peut envoyé un
message à une autre objet. - navigation
10Diagrammes de collaboration (messages)
- Message
- implique linvocation dune méthode
- flèche avec le nom de la méthode
- Séquence des messages
- numérotation
11Diagrammes de collaboration (messages)
-  Les paramètres de message
getBalance(String, Integer)
royalBank
anATM
Bank
12Diagrammes de collaboration (messages)
- Appel dune méthode définie à même sa propre
classe.
13Rappel Lien vs association
La collaboration implicitement implique une
association.
14Diag de collaboration résumé 1
15Diag de collaboration résumé 2
16Visibilité dobjet
- La création dobjet est strictement associée avec
la visibilité - initialement seul le créateur à la visibilité
pour lobjet nouvellement crée, tout autre objet
qui veut accéder a cet objet doit obtenir la
visibilité du créateur (directement ou
indirectement)
17Visibilité dobjet
- Lobjet serveur offre un service à travers une
interface - Lobjet client utilise les services dun serveur,
alors - Le client initialise la communications avec le
serveur - Le client doit avoir la visibilité du serveur
- Il nest pas nécessaire que le serveur possède la
visibilité du client
18Quatre types de visibilité
- Global
- Lobjet a une portée globale pour le client
- Champ (self)
- Lobjet fait parti du client
- Paramétrique
- Lobjet est un paramètre dune méthode du client
- Le client obtient la visibilité de lobjet a
travers léchange dun message avec un autre
objet - Local
- Lobjet est déclaré localement dans la portée du
client
19Notation de la visibilité
client
serveur
20Synchronisation de messages
- La synchronisation des messages utilisées
jusquici est simple et séquentielle. - Lorsque nous disposons de plusieurs fils
dexécution (thread), il devient nécessaire de
spécifier dautres formes de synchronisation.
21Synchronisation de messages
22Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario
23Diagrammes de séquence
- Un type de diagramme d'interaction
anATM
Bank
royalBank
Bank
getBalance(String, Integer)
getCustomerBalance
Débute ici
Invocation retour (optionnel) durée
24Diagramme de séquence
25Messages
26Diag collaboration
27Diagramme de séquence
28(No Transcript)
29(No Transcript)
30Collaboration vs Séquence
- Les diagrammes de collaboration et de séquence
sont sémantiquement équivalent. - Collaboration mets lemphase sur la structure
(étant un diag. dobjet à la base). - Séquence mets lemphase sur le flot de contrôle
en fonction du temps.
31Collaboration vs Séquence
32Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario
33Scénarios
- Séquence particulière de messages qui s applique
aux diagrammes dinteraction qui exprime un cas
spécifique dusage ou du comportement de
lapplication. - Nécessite au moins un diagramme dinteraction
pour chacun des scénarios.
34Sujet de cette section
- Collaboration
- Objet et leurs rôles, Interaction, Message
- Diagramme dinteraction
- Diagramme de collaboration
- Diagramme de séquence
- Use-case
- Scénario