25
Diagrammes d’interaction

Diagramme D'Interaction COUR

Embed Size (px)

DESCRIPTION

COUR Diagramme D'interaction

Citation preview

Page 1: Diagramme D'Interaction COUR

Diagrammes d’interaction

Page 2: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 2

Définitions

Des modèles qui décrivent la façon dont des groupes d'objets collaborent pour réaliser un comportement donné.

Un DI capture le comportement d'un seul cas d'utilisation. Représente un certain nombre d'objets et les messages

transmis entre ces objets dans la réalisation du cas d'utilisation.

Le comportement représenté est décrit en UML de deux manières : par un classeur structuré ou une collaboration.

Page 3: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 3

Classeur structuré : décomposition des classeurs de l’analyse (CU, Classes, Sous Système …).

Définitions

Commande

:Ligne_Commande

: Produit

1,1

1,1

Page 4: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 4

Classeur structuré : description des instances qui collaborent.

Définitions

RetraitGuichet

guichet:Guichet

banque:Banque

client :Personne

compte:Compte

Page 5: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 5

Définitions

Deux sortes de DI : Les diagrammes de séquence Les diagramme de communication

Page 6: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 6

{subset}

{xor}

Page 7: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 7

Diagramme de Séquence : exemple

Le temps

Page 8: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 8

Diagramme de communication : exemple

Complémentaire du diagramme de séquence

Page 9: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 9

Diagramme de séquences

Représentation des interactions entre acteurs et objets

Vision temporelle d’une interaction Chaque objet est symbolisé par une barre verticale : ligne de vie Le temps s'écoule de haut en bas, de sorte que la numérotation

des messages est optionnelle. Diagramme dual du diagramme de communication

Souvent utilisé pour représenter une instance de cas d’utilisation

De manière plus générale, représentation temporelle d’une interaction Bien adapté pour de longues séquences Ne visualise pas les liens

Page 10: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 10

Diagrammes de séquences :Concepts

Ligne de vie[<nom_du_rôle>] : [<Nom_du_type>]

Message

Page 11: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 11

Diagrammes de séquences :Les messages

Syntaxe d’un message :[ ’[’cond’]’ [séq] [ *[||] ’[’iter’]’ ] :] [r :=] msg([par])

cond : condition (expression booléenne) entre crochets séq : numéro de séquence du message = chiffres séparés

par des points iter : (en langage naturel, entre crochets) envoi séquentiel || : envoi en parallèle. r : valeur de retour du message. msg : nom du message. par : désigne les paramètres (optionnels) du message.

Page 12: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 12

Différents types de messages : l’envoi d’un signal : interruption ou évènement

Message asynchrone

Diagrammes de séquences :Les messages

Page 13: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 13

Diagrammes de séquences :Les messages

l’invocation d’une opération : synchrone ou asynchrone;

La syntaxe de réponse à un message est la suivante :

[<attribut> = ] message [ : <valeur_de_retour>]

Page 14: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 14

Diagrammes de séquences :Les messages

la création ou la destruction d’une instance.

Création

Destruction

Page 15: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 15

Diagrammes de séquence

Avec des objets actifs

Page 16: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 16

Diagrammes de séquences – Processus Concurrents

Une transaction

Un Coordinateur de Transaction

Un premier Vérificateur de

Transaction

nouveau

Boîte d'activation

Message Asynchrone

nouveau

nouveau

nouveauUn second

Vérificateur de Transaction

Traitement non Représenté

ok

terminé?

terminé?

ok

l'objet se détruit lui même

estValideAuto-appel

UML 1.x

Page 17: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 17

Diagrammes de séquences – Vérification des échecs

Une transaction

Un Coordinateur de Transaction

Un premier Vérificateur de

Transaction

nouveau

nouveau

nouveau

nouveauUn second

Vérificateur de Transaction

échec

destruction des vérificateurs

ok

Destruction par un autre objet

estInvalide

Lorsque une transaction est créée …

…elle crée un coordinateur pour gérer la validation.

Le coordinateur crée une série de Vérificateurs, un pour chaque type de vérification. Ces vérificateurs effectuent leurs tâches dans des processus séparés.

Si une vérification échoue, le Coordinateur détruit les autres Vérificateurs alors qu'ils sont encore actifs …

…et avertit la Transaction de l'invalidité.

UML 1.x

Page 18: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 18

Diagrammes de séquences :Les fragments d’interaction

Différents opérateurs d’interaction :

les opérateurs de choix et de boucle : alternative, option, break et loop ;

les opérateurs contrôlant l’envoi en parallèle de messages : parallel et critical region ;

les opérateurs contrôlant l’envoi de messages : ignore, consider, assertion et negative ;

les opérateurs fixant l’ordre d’envoi des messages : weak sequencing , strict sequencing.

Page 19: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 19

Diagrammes de communication

Représentation d’une collaboration entre rôles Représentation spatiale d’une interaction

Mise en avant de la structure Représentation des structures complexes (récursives par

exemple) Pas d’axe temporel

Diagramme dual du diagramme de séquence

Des rôles ou des objets dans une situation donnée

Des liens relient les objets qui se connaissent

Les messages échangés par les objets sont représentés le long de ces liens

L’ordre d’envoi des messages est matérialisé par un numéro de séquence

Page 20: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 20

Objet 1 : nom de la classe

Objet 3

Objet 2

: nom de la classe

3 : Operation 1 (parametres)

1 : evenement 2 : operation

4 : operation

flux de donnees

5 : operation (parametre)nom acteur :nom de la classe

Diagramme de communication

Page 21: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 21

Exemples

Object Actif

Avec Acteur

Multi-objets

: Personne : Ascenseur

: Cabine

1: Venir me chercher au RDC

2: Ajouter destination RDC

: Traitement de texte

: Imprimante : Scanner

1 : Lire

2 : Ecrire

Page 22: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 22

Diagramme de communication (niveau instances)

Page 23: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 23

Diagramme de communication avec condition

Page 24: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 24

Diagramme de communication

Niveau Instance

Niveau spécification

Page 25: Diagramme D'Interaction COUR

S. Mouline Licence SMI-FSR Mod. 31 UML - Interactions Diagram 25

Diagramme de communication

Avec contraintes

et généralisation