le langage uml : les diagrammes de séquence
TRANSCRIPT
![Page 2: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/2.jpg)
2
Modélisation des interactions
� Les objets d’un système ont un comportement � Ils interagissent entre eux� Dynamique générale du système
� 2 diagrammes UML pour représenter les interactions entre les objets� Diagramme de séquence� Diagramme de communication
![Page 3: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/3.jpg)
3
Séquence vs communication
� Diagramme de séquences� Focalisé sur les aspects temporels
� Diagramme de communication� Focalisé sur la représentation spatiale� (Diagramme de collaboration en UML 1)
![Page 4: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/4.jpg)
4
Diagramme de séquence
Lire un livre UML pour une explication détaillée des diagrammes de communication
![Page 5: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/5.jpg)
5
Plan
1. Définition2. Utilisation3. Objets4. Ligne de vie5. Messages6. Structures de contrôle
![Page 6: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/6.jpg)
6
1. Diagramme de séquence –définition� Décrit la dynamique du système� Plusieurs diagrammes nécessaire pour
capturer « toute » la dynamique d’un système� Un / plusieurs diagramme(s) lié(s) à chaque sous-
fonction� Diagramme de séquence
� Montre de façon séquentielle� Les envois de messages entre objets� Éventuellement les flux de données
![Page 7: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/7.jpg)
7
1. Définition: interactions� Les objets s’envoient des messages entre eux
pour interagir� Une interaction se traduit par un envoi de
message entre objets� Envoi de message = appel de méthode� A la réception d’un message,
� Un objet devient actif� Exécute la méthode du même nom
![Page 8: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/8.jpg)
8
2. Utilisation� Documentation des cas d’utilisation :
� description des interactions en des termes proches de l’usager,
� les étiquettes des messages correspondent à des événements se produisant dans le système
� Représentation des interactions “informatiques” et répartition des flots de contrôle :� le concept de message unifie les formes de� communication entre objets (appel de procédure,� événement discret, signal, ...)
![Page 9: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/9.jpg)
9
3. Objets� Entités appartenant au système ou se
trouvant à ses limites� Ils représentent :
� acteurs� concepts abstraits (cas d’utilisation)� soit des objets d’implantation (interactions
“informatiques”)� Ils sont identifiés par l’intermédiaire
� des cas d’utilisation� ou des diagrammes de classe.
![Page 10: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/10.jpg)
10
3. Objets : représentation� En UML, les objets sont représentés comme suit :
� Le nom de l’objet est composé de son rôle (ou nom)� et/ou du nom de la classe instanciée (classe)� Le nom est souligné pour indiquer qu’il s’agit d’une
instance.
![Page 11: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/11.jpg)
11
4. Ligne de vie d’un objet� Le diagramme de séquence fait apparaître les instances des classes
� A chaque instance est associée une ligne de vie � Ligne verticale en dessous des objets qui montre � Période de temps durant laquelle l’objet “existe”
� Les actions et réactions de l’objet� Ses périodes actives / inactives� (éventuellement) sa création et/ ou sa destruction
![Page 12: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/12.jpg)
12
4. Ligne de vie
![Page 13: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/13.jpg)
13
4. Ligne de vie
� Création d’un objetun message pointe sur le symbole de l’objet.
� Destruction d’un objetsa ligne de vie se termine par une croix en trait épais (×).
![Page 14: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/14.jpg)
14
5. Messages
� Les objets communiquent en � échangeant des messages � représentés sous forme de flèches
� L’ordonnancement horizontal des messages n’a aucune signification
� Les messages sont étiquetés � par le nom de l’opération ou � du signal invoqué.
![Page 15: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/15.jpg)
15
5. Message et activation
� Une période d’activité correspond au temps pendant lequel
� Un objet effectue une action directe ou indirecte� Représentation : bande verticale le long de la ligne
de vie de l’objet
![Page 16: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/16.jpg)
16
5. Différent types de message� message simple
Message dont on ne spécifie aucune caractéristique d'envoi ou de réception particulière
� message minuté (timeout)Bloque l'expéditeur pendant un temps donné (qui peut être spécifié dans une contrainte), en attendant la prise en compte du message par le récepteurL'expéditeur est libéré si la prise en compte n'a pas eu lieu pendant le délai spécifié
� message synchroneBloque l'expéditeur jusqu'à prise en compte du message par le destinataire Le flot de contrôle passe de l'émetteur au récepteur (l'émetteur devient passif et le récepteur actif) à la prise en compte du message
![Page 17: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/17.jpg)
17
5. Différent types de message� message asynchrone
N'interrompt pas l'exécution de l'expéditeur. Le message envoyé peut être pris en compte par le récepteur à tout moment ou ignoré (jamais traité)
� message dérobantN'interrompt pas l'exécution de l'expéditeur et ne déclenche une opération chez le récepteur que s'il s'est préalablement mis en attente de ce message
![Page 18: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/18.jpg)
18
5. Différent types de message
![Page 19: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/19.jpg)
19
5. Message asynchrone
![Page 20: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/20.jpg)
20
5. Message synchrone
![Page 21: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/21.jpg)
21
6. Structures de contrôle…des opérateurs
� De choix et de boucle :alternative, option, break et loop
� Contrôlant l’envoi en parallèle de messages :parallel et critical region
� Contrôlant l’envoi de messages :ignore, consider, assertion et negative
� Fixant l’ordre d’envoi des messages :weak sequencing , strict sequencing
![Page 22: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/22.jpg)
22
Alternative
![Page 23: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/23.jpg)
23
Loop
![Page 24: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/24.jpg)
24
Exemple : DAB
![Page 25: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/25.jpg)
25
Exemple : outil de recherche de carte sur Internet
![Page 26: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/26.jpg)
26
Diagramme de cas d’utilisation
![Page 27: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/27.jpg)
27
Diagramme de classe
![Page 28: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/28.jpg)
28
Chercher une adresse
![Page 29: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/29.jpg)
29
ExerciceSystème de réservation de ressource
1. Traduire 2 scénarios en diagramme de séquence2. Proposer un diagramme de classe3. Détailler les 2 scénarios par rapport au diagramme de
classe
![Page 30: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/30.jpg)
30
Exercice
distributeur de boisson
![Page 31: Le langage UML : Les diagrammes de séquence](https://reader036.vdocuments.net/reader036/viewer/2022062417/62ae38e52ddb6c4f0d784a1e/html5/thumbnails/31.jpg)
31
Exercice
Achat sur un site marchand Internet