Sunteți pe pagina 1din 15

LOG2410 - Conception logicielle

CHAPITRE 4
Diagrammes dinteraction

Franois Guibault, 2006

Diagrammes dinteraction Titre chapitre

Interactions
Description du comportement, incluant un ensemble de messages changs entre un ensemble dobjets lintrieur dun contexte particulier afin daccomplir un but spcifique, Modliser laspect dynamique des collaborations, Modliser le flux de contrle dans une opration, une classe, une composante, un cas dutilisation ou un systme dans son ensemble, Reprsenter les messages changs entre des objets, acteurs, etc.
Invocation dune opration Envoi dun signal Cration et destruction dobjets

Franois Guibault 2006 2005

4- 2

Diagrammes dinteraction Titre chapitre

Objets et rles
Les objets qui participent une interaction sont : Des objets concrets
ex.: p est une personne en particulier

Des objets prototypes


ex.: p est une personne en gnral

Des acteurs
ex.: p est un acteur interagissant avec le systme

Un systme ou un sous-systme
ex.: s est un sous-systme avec lequel des acteurs interagissent

Franois Guibault 2006 2005

4- 3

Diagrammes dinteraction Titre chapitre

Liens
Connexion smantique entre objets. Instance dune association. Lorsquil y a un lien entre deux objets, des messages peuvent tre envoys et reus entre ces objets.

Franois Guibault 2006 2005

4- 4

Diagrammes dinteraction Titre chapitre

Types de messages changs


Appeler
Invoque une opration dun objet. Un objet peut senvoyer un message ce qui correspond linvocation locale dune opration.

Retourner
Retourner une valeur lappelant.

Envoyer Envoyer un signal un objet.


create Crer Crer un objet.

Dtruire Dtruire un objet. Un objet peut se suicider en senvoyant un message de destruction.


Franois Guibault 2006 2005

destroy

4- 5

Diagrammes dinteraction Titre chapitre

Deux types de diagrammes dinteraction


Les deux types de diagrammes sont strictement quivalents lun lautre, ils contiennent la mme information. Toutefois, il ne prsente pas linformation de la mme faon. Diagramme de squence: Se concentre sur lordre squentiel des messages. Diagramme de collaboration: Se concentre sur lorganisation structurelle dans laquelle les objets senvoient et reoivent des messages.

Franois Guibault 2006 2005

4- 6

Diagrammes dinteraction Titre chapitre

Diagramme de squence
Diagramme de squence entre un acteur et le systme

client

:Systme identifierClient(no,nip) choisirOperation(op)

Franois Guibault 2006 2005

4- 7

Diagrammes dinteraction Titre chapitre

Diagramme de squence
Ligne de vie Reprsente lexistence dun objet pendent une priode de temps.
c:Client

Franois Guibault 2006 2005

4- 8

Diagrammes dinteraction Titre chapitre

Diagramme de squence
Activation Reprsente le temps durant lequel un objet est actif, cest--dire en train dexcuter une opration.
c:Client

Franois Guibault 2006 2005

4- 9

Diagrammes dinteraction Titre chapitre

Diagramme de squence
La squence des messages est spcifie par la position verticale des messages changs.
c:Client
crer

p:ODBCProxy :Transaction
modifier(a, 3.5) modifier(c, "or") commise dtruire

temps

augmenter("or",3.5)

Franois Guibault 2006 2005

4- 10

Diagrammes dinteraction Titre chapitre

Diagramme de squence
Synchronisation Mode par dfaut des messages. Le contrle est pass de lappelant lappel; lopration de lappelant est suspendue. Le contrle est rendu lappelant la fin de lopration appele; lappelant reprend lexcution de lopration en cours.
Franois Guibault 2006 2005

4- 11

Diagrammes dinteraction Titre chapitre

Diagramme de squence
Concurrence Spcifie par lutilisation de messages denvoi. Un signal est envoy un objet; lobjet envoyeur continue son opration.

Franois Guibault 2006 2005

4- 12

Diagrammes dinteraction Titre chapitre

Diagramme de squence
a:Abonn
dcrocher() tablirTonalit() *presserTouche(t) tablirChemin(a,n) crer

:Commutateur

b:Abonn

c:Conversation
sonner() dcrocher()

connecter(a,b) connecter(a) connecter(b)

Les abonns a et b peuvent changer de linformation une fois connects Franois Guibault 2006 2005

4- 13

Diagrammes dinteraction Titre chapitre

Diagramme de squence
c : Client : InterfaceGuichet
entrerNIP(n : NIP) vrifierNIP(n:NIP, c:Client) validerNIP() NIP approuv create afficherMenuOprations() vrifierSolde(c: Client) vrifierSolde(c:Client) vrifierSolde(c:Client)

t : Transaction

cc : CompteClient

afficherSolde() terminerSession() destroy

Franois Guibault 2006 2005

4- 14

Diagrammes dinteraction Titre chapitre

Diagramme de collaboration
c:Client

Objet
1: entrerNIP(n : NIP) 5: <<crer>>

6: afficherMenuOprations()

Numro de squence

: InterfaceGuichet

t : Transaction

2: vrifierNIP (n : NIP, v : Client) 4: NIPapprouv()

lien
cc : CompteClient

Messages
3: validerNIP
Franois Guibault 2006 2005

4- 15