Vous êtes sur la page 1sur 40
V2.1 Université de Nantes États-transitions et activités Modèle PowerPoint Olivier LE MARREC –
V2.1
Université de Nantes
États-transitions et activités
Modèle PowerPoint
Olivier LE MARREC – olivier.lemarrec@gmail.com
[X5I0140]
Modélisation UML
1
Plan 1.  Introduction 2.  Diagramme états-transitions 3.  Diagramme d’activités 4.  Conclusion
Plan
1. 
Introduction
2. 
Diagramme états-transitions
3. 
Diagramme d’activités
4. 
Conclusion
Université de Nantes
Olivier LE MARREC
États-transitions et activités
2
de Nantes Olivier LE MARREC États-transitions et activités 2 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Introduction n  Dans notre travail de définition des classes impliquées dans les
États-transitions et activités
Introduction
n  Dans notre travail de définition des classes impliquées dans les
traitements à mettre en œuvre, il y a plusieurs techniques
associées :
n  Les diagrammes de communication permettent de mettre l’accent
sur la structure « relationnelle » des classes.
n  Les diagrammes de séquences, quant à eux, apportent un élément
nouveau, le temps. Ils mettent en évidence l’ordre dans lequel les
échanges se font entre les classes.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
3
États-transitions et activités Introduction n  La mise en place de ces diagrammes nous a fait
États-transitions et activités
Introduction
n  La mise en place de ces diagrammes nous a fait apparaître des
concepts d’informatisation : les contrôleurs.
n  Ces éléments assurent le pilotage du système
n  en contrôlant les échanges
n  en prenant en charge la logique générale
n  Les contrôleurs sont dits actifs, par opposition à passifs, qui
désignent des objets se « contentant » de répondre à une
sollicitation.
n  Si nous voulons définir de façon complète les classes
impliquées dans les traitements à mettre en œuvre, il nous faut
impérativement :
n  analyser ces comportements,
n  modéliser ces comportements pour pouvoir les informatiser.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
4
de Nantes Olivier LE MARREC États-transitions et activités 4 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Introduction n  Cette modélisation se fait grâce à deux types de diagrammes
États-transitions et activités
Introduction
n  Cette modélisation se fait grâce à deux types de diagrammes
bien spécifiques
n  les diagrammes états-transitions
n  Représenter le cycle de vie des instances d’une classe
n  Spécifier les états, les transitions entre ces états et les actions
associées aux transitions.
n  Modélisation de certaines classes
n  Formalisme utilisé est emprunté aux Statecharts
n  les diagrammes d’activités
n  Comportement d’opérations d’une classe
n  Pour formaliser un processus d’une organisation
Université de Nantes
Olivier LE MARREC
États-transitions et activités
5
Plan 1.  Introduction 2.  Diagramme états-transitions 3.  Diagramme d’activités 4.  Conclusion
Plan
1. 
Introduction
2. 
Diagramme états-transitions
3. 
Diagramme d’activités
4. 
Conclusion
Université de Nantes
Olivier LE MARREC
États-transitions et activités
6
de Nantes Olivier LE MARREC États-transitions et activités 6 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Ces diagrammes états-transitions sont des automates
États-transitions et activités
Diagramme états-transitions
n  Ces diagrammes états-transitions sont des automates
hiérarchiques, parallèles, associés aux classes actives dont le
comportement est évolutif et qu’il est important de décrire.
n  Ces classes (associées à un ou plusieurs automates) sont
distinguées graphiquement
n  Une classe « entourée » est un contrôleur, c’est-à-dire une classe
qui a un comportement dynamique
CLASSE3
CLASSE1
CLASSE1
CLASSE2
CLASSE3
CLASSE4
CLASSE2
CLASSE4
Université de Nantes
Olivier LE MARREC
États-transitions et activités
7
États-transitions et activités Diagramme états-transitions n  Définitions n  Une machine à états montre le
États-transitions et activités
Diagramme états-transitions
n  Définitions
n  Une machine à états montre le comportement dynamique d’un objet
ou d’une interaction, en terme d’états et de transitions entre ces
états en réponse aux événements qu’il reçoit
n  Une machine à états est souvent attachée à une classe ou à une
méthode ; elle définit le comportement dynamique que partageront
toutes les instances de cette classe
n  Elle ne situe pas au même niveau que les interactions d’objets qui
décrivent un scénario particulier
Université de Nantes
Olivier LE MARREC
États-transitions et activités
8
de Nantes Olivier LE MARREC États-transitions et activités 8 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Etat n  C’est une étape du
États-transitions et activités
Diagramme états-transitions > Définition
n  Etat
n  C’est une étape du cycle de vie d’un objet pendant laquelle
n  il satisfait une condition,
n  ou exécute une action
n  ou attend un événement.
n  un objet reste dans un état donné pour une période de temps finie,
non instantanée (à l’échelle de temps de l’application)
n  A minima, il y a toujours au moins 1 état :
n  État de début (unique): indispensable, tout objet commence dans cet
état
n  Etat de fin (multiple) : pas indispensable (mais fortement
recommandé), passage obligé pour tout objet à détruire
Université de Nantes
Olivier LE MARREC
États-transitions et activités
9
États-transitions et activités Diagramme états-transitions > Définition n  Etat n  Un état est
États-transitions et activités
Diagramme états-transitions > Définition
n  Etat
n  Un état est représenté de la manière suivante :
n  Un cartouche d’identification
n  Un bandeau des actions, activités et inclusions
n  Un bandeau état
Nom de lʼétat
Nom de lʼétat
Entrée : action
Faire : activité
Sortie : action
Université de Nantes
Olivier LE MARREC
États-transitions et activités
10
de Nantes Olivier LE MARREC États-transitions et activités 10 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Transition n  C’est le passage
États-transitions et activités
Diagramme états-transitions > Définition
n  Transition
n  C’est le passage d’un état à un autre état (éventuellement le même),
causé par l’arrivée d’un événement
n  Une transition est instantanée (à l’échelle de temps de l’application)
n  Elle se représente par une flèche, généralement nommée
Nom de la transition
Transitions
Université de Nantes
Olivier LE MARREC
États-transitions et activités
11
États-transitions et activités Diagramme états-transitions > Définition n  Evénement n  C’est quelque
États-transitions et activités
Diagramme états-transitions > Définition
n  Evénement
n  C’est quelque chose de remarquable qui survient à un instant
donné
n  C’est un stimulus auquel l’objet doit répondre, capable de
déclencher une transition d’un état vers un autre.
n  Un événement n’a pas de durée (à l’échelle de temps de
l’application)
Evénement(paramètres) [condition]/actions
Université de Nantes
Olivier LE MARREC
États-transitions et activités
12
de Nantes Olivier LE MARREC États-transitions et activités 12 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Evénement n  Evénement : n 
États-transitions et activités
Diagramme états-transitions > Définition
n  Evénement
n  Evénement :
n  est souvent un message venant de l ’extérieur de l ’objet, qui figure
sur les diagrammes de séquence,
n  est associé en général à une transition.
n  [condition] :
n  optionnelle,
n  appelée garde de transition
n  doit être vérifiée pour que l ’événement soit pris en compte.
n  /action :
n  optionnelle,
n  décrit une action à exécuter (opération disponible dans l'objet dont on
représente les états) si l’événement survient et doit être pris en
compte.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
13
États-transitions et activités Diagramme états-transitions > Définition n  Evénement n  Il existe
États-transitions et activités
Diagramme états-transitions > Définition
n  Evénement
n  Il existe différents types d’évènements :
n  demande d’opération ou réception d’un signal explicite envoyé par
un autre objet : nom_evt(paramètres)
n  changement d’une condition booléenne ou évaluation d’une date :
when(expression)
n  épuisement d’un délai temporel : after(expression)
Université de Nantes
Olivier LE MARREC
États-transitions et activités
14
de Nantes Olivier LE MARREC États-transitions et activités 14 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Garde n  Notée entre [ ].
États-transitions et activités
Diagramme états-transitions > Définition
n  Garde
n  Notée entre [ ]. C’est une expression booléenne, paramètre de
l’événement déclencheur de la transition entre 2 états.
n  Pour que la transition soit franchie, il faut que l’évènement
survienne et que la condition soit vraie.
n  Attention : la condition porte sur une valeur. Ce n’est pas un
évènement
Université de Nantes
Olivier LE MARREC
États-transitions et activités
15
États-transitions et activités Diagramme états-transitions > Définition n  Action n  Opération
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  Opération instantanée associée à un événement, qui provoque le
changement d’état de l’objet.
n  Elle est notée par un « / » qui précède le nom de l’action.
n  Elle peut concerner des attributs ou des liens de l’objet propriétaire
du diagramme.
n  L’action dans sa totalité est exécutée sur le franchissement de la
transition.
Il pleut / ouvrir parapluie
Université de Nantes
Olivier LE MARREC
États-transitions et activités
16
de Nantes Olivier LE MARREC États-transitions et activités 16 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > exercice n  Enoncé n  Nous allons tenter de
États-transitions et activités
Diagramme états-transitions > exercice
n  Enoncé
n  Nous allons tenter de décrire la vie des étudiants de la MIAGE de
Nantes, exprimée au travers d’un ensemble d’états et de transitions
entre ces états.
n  La scolarité dure trois ans. Nous allons, dans un premier temps,
associer un état à chaque année. Nous appellerons ces états
EnPremièreAnnée, EnDeuxièmeAnnée et EnTroisièmeAnnée.
n  Plusieurs événements peuvent survenir durant le parcours des
étudiants. Voici ceux qui ont été recensés :
n  Admission (qui conditionne le passage dans l’année supérieure ou la
délivrance du diplôme final),
n  Redoublement (qui maintient l’étudiant au même niveau),
n  Exclusion (qui interrompt la scolarité de l’étudiant),
n  Sélection (pour l’entrée en première année)
n  Abandon. Ce dernier événement, qui peut survenir n’importe quand
durant la formation, entraîne la disparition de l’étudiant de la MIAGE.
n  Question
n  décrivez par un diagramme non hiérarchique la vie d’un étudiant
Université de Nantes
Olivier LE MARREC
États-transitions et activités
17
États-transitions et activités Diagramme états-transitions > exercice n  Restitution Université de Nantes
États-transitions et activités
Diagramme états-transitions > exercice
n  Restitution
Université de Nantes
Olivier LE MARREC
États-transitions et activités
18
de Nantes Olivier LE MARREC États-transitions et activités 18 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Action dans les états n  Les
États-transitions et activités
Diagramme états-transitions > Définition
n  Action dans les états
n  Les actions propres à un état peuvent aussi être documentées
directement à l'intérieur de l'état.
n  UML définit un certain nombre de champs qui permettent de décrire
les actions dans un état
n  Il y a différents types d’actions :
n  entry
n  exit
n  do
n  on
n  include
Université de Nantes
Olivier LE MARREC
États-transitions et activités
19
États-transitions et activités Diagramme états-transitions > Définition n  Action n  Entry n  l’action
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  Entry
n  l’action sera exécutée à chaque entrée dans l’état, quelque soit
l’événement déclenchant l’entrée. Lorsque l’action est terminée,
l’objet reste dans l’état, en attente.
Authentification
EVT1
Entrée : ne pas afficher les entrées clavier
EVT2
EVT3
Si EVT1, EVT2 ou EVT3 survient,
on exécute lʼaction.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
20
de Nantes Olivier LE MARREC États-transitions et activités 20 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Action n  Exit n  l’action
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  Exit
n  l’action sera exécutée à chaque sortie de l’état, quelque soit
l’événement déclenchant la sortie.
Authentification
EVT5
Sortie : réafficher les entrées clavier
EVT3
Si EVT5 ou EVT3 survient,
on exécute lʼaction
Université de Nantes
Olivier LE MARREC
États-transitions et activités
21
États-transitions et activités Diagramme états-transitions > Définition n  Action n  Do n  l’action
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  Do
n  l’action exécutée est significative ou récurrente dans l'état
Authentification
Faire : vérifier mot de passe
Lorsque lʼautomate est dans lʼétat,
il exécute lʼaction
Université de Nantes
Olivier LE MARREC
États-transitions et activités
22
de Nantes Olivier LE MARREC États-transitions et activités 22 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Définition n  Action n  On n  l’action
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  On
n  l’action est associée à un évènement interne. Attention, les actions
attachées aux clauses "entry" et "exit" ne sont pas exécutées si
l'événement spécifié dans la clause "on" survient.
Authentification
Quand aide : afficher lʼaide
Lorsque lʼautomate est dans lʼétat, si
lʼévènement survient, lʼaction sera exécutée
Université de Nantes
Olivier LE MARREC
États-transitions et activités
23
États-transitions et activités Diagramme états-transitions > Définition n  Action n  Include n  Avec un
États-transitions et activités
Diagramme états-transitions > Définition
n  Action
n  Include
n  Avec un état composite formé de plusieurs états disjoints masqués, il
est nécessaire d’indiquer quelque part quel automate est inclus dans
cet état composite. Cette notation introduit une invocation d’un sous-
automate.
Authentification
Inclure : Automate X
Lorsque lʼautomate est dans lʼétat,
lʼautomate inclus pourra être activé
Université de Nantes
Olivier LE MARREC
États-transitions et activités
24
de Nantes Olivier LE MARREC États-transitions et activités 24 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Composition
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Composition (simultanée) de plusieurs sous-états, appelés régions
n  Exemple d’un pilote d’avion d’un aéroclub.
n  Celui-ci doit, pour voler sur un des avions de ce club, remplir deux
conditions :
n  il doit d’abord être en bonne santé (celle-ci étant avérée par un
médecin lors de visites médicales régulières).
ET
n  Il doit ensuite avoir un compte approvisionné.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
25
États-transitions et activités Diagramme états-transitions n  Concurrence d’états [NBH > 300h] inapte
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
[NBH > 300h]
inapte
apte
[OK] VISITE
[pas OK] VISITE
PointDeVueAviateur
PointDeVueClient
[SOLDE ≤ 0] VOL
débiteur
solvable
[ASSEZ] DEPOT
[pas ASSEZ] DEPOT
[SOLDE > 0] VOL
Université de Nantes
Olivier LE MARREC
États-transitions et activités
26
de Nantes Olivier LE MARREC États-transitions et activités 26 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Un pilote pourra donc
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Un pilote pourra donc être (liste de toutes les combinaisons
possibles) :
n  inapte et solvable (IS)
n  inapte et débiteur (ID)
n  apte et solvable (AS)
n  apte et débiteur (AD)
n  C’est-à-dire qu’il peut être vu de la manière suivante :
Université de Nantes
Olivier LE MARREC
États-transitions et activités
27
États-transitions et activités Diagramme états-transitions n  Concurrence d’états [pas ASSEZ] DEPOT ID IS
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
[pas ASSEZ] DEPOT
ID
IS
[ASSEZ] DEPOT
[SOLDE ≤ 0] VOL
AD
AS
[ASSEZ] DEPOT
[pas ASSEZ] DEPOT
[SOLDE > 0] VOL
Université de Nantes
Olivier LE MARREC
États-transitions et activités
28
[OK] VISITE
[pas OK] VISITE
[NBH > 300h]
[NBH > 300h]
[OK] VISITE
[pas OK] VISITE
[NBH > 300h] [NBH > 300h] [OK] VISITE [pas OK] VISITE Modélisation UML – États-transitions et

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Ces deux modèles sont
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Ces deux modèles sont deux vues différentes qui expriment le
même système (problème)
n  C’est un choix de modélisation
Université de Nantes
Olivier LE MARREC
États-transitions et activités
29
États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Début n  Lorsqu’on
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Début
n  Lorsqu’on arrive sur un état-automate parallèle, tous les automates
« internes » démarrent par leur état initial.
Y.1.1
PointDeVueX
X
PointDeVueY
Y.2.1
Université de Nantes
Olivier LE MARREC
États-transitions et activités
30
de Nantes Olivier LE MARREC États-transitions et activités 30 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Début n  Lorsqu’on
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Début
n  Lorsqu’on arrive sur un état-automate parallèle, tous les automates
« internes » démarrent par leur état initial.
Y.1.1
PointDeVueX
X
PointDeVueY
Y.2.1
Université de Nantes
Olivier LE MARREC
États-transitions et activités
31
États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Fin n  La fin d’un
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Fin
n  La fin d’un tel état-automate est réalisée lorsque tous les automates
« internes » ont terminé leur vie.
Y.1.5
A
PointDeVueX
Z
PointDeVueY
Y.2.7
B
Université de Nantes
Olivier LE MARREC
États-transitions et activités
32
de Nantes Olivier LE MARREC États-transitions et activités 32 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Fin n  La fin d’un
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Fin
n  La fin d’un tel état-automate est réalisée lorsque tous les automates
« internes » ont terminé leur vie.
Y.1.5
A
PointDeVueX
Z
PointDeVueY
Y.2.7
B
Université de Nantes
Olivier LE MARREC
États-transitions et activités
33
États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Fin n  La fin d’un
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Fin
n  La fin d’un tel état-automate est réalisée lorsque tous les automates
« internes » ont terminé leur vie.
Y.1.5
A
PointDeVueX
Z
PointDeVueY
Y.2.7
B
Université de Nantes
Olivier LE MARREC
États-transitions et activités
34
de Nantes Olivier LE MARREC États-transitions et activités 34 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Court-circuit n  Il
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Court-circuit
n  Il est possible de changer ces deux contraintes en manipulant des
transitions inter-niveaux.
n  Ce procédé est clairement déconseillé
n  Entrée
Y.1.1
Y.1.2
PointDeVueX
X
PointDeVueY
Y.2.1
Université de Nantes
Olivier LE MARREC
États-transitions et activités
35
États-transitions et activités Diagramme états-transitions n  Concurrence d’états n  Court-circuit n  Il
États-transitions et activités
Diagramme états-transitions
n  Concurrence d’états
n  Court-circuit
n  Il est possible de changer ces deux contraintes en manipulant des
transitions inter-niveaux.
n  Ce procédé est clairement déconseillé
n  Sortie
Y.1.x
Y.1.5
A
PointDeVueX
Z
PointDeVueY
Y.2.7
B
Université de Nantes
Olivier LE MARREC
États-transitions et activités
36
de Nantes Olivier LE MARREC États-transitions et activités 36 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  Les diagrammes
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  Les diagrammes états-transitions d’UML sont des automates
hiérarchiques parallèles avec les particularités suivantes :
n  Transitions composites
n  États composites
n  États historiques
n  États de synchronisation
n  États et transitions hérités
Université de Nantes
Olivier LE MARREC
États-transitions et activités
37
États-transitions et activités Diagramme états-transitions > Eléments avancés n  Transitions composites n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  Transitions composites
n  L’objectif essentiel de cette extension est clairement la
factorisation. Une transition composite est constituée de trois
parties :
n  un point de jonction
n  une ou plusieurs transitions situées en amont
n  une ou plusieurs transitions situées en aval
Université de Nantes
Olivier LE MARREC
États-transitions et activités
38
de Nantes Olivier LE MARREC États-transitions et activités 38 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  Transitions composites n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  Transitions composites
n  Le point de jonction peut être :
n  Statique : Evaluation des gardes avant le franchissement de la
transition
n  Dynamique : Evaluation des gardes lorsque le point de jonction est
atteint
La transition X nʼest activé que si
l ʼune des branches est activable
La transition X est activée, ce nʼest quʼau
niveau du point de choix que lʼon
regarde si une des transitions est activable.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
39
États-transitions et activités Diagramme états-transitions > Eléments avancés n  Transitions composites n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  Transitions composites
n  Le point de jonction peut être :
n  Un débranchement : diviser des transitions
n  Une jointure : regrouper des transitions
Université de Nantes
Olivier LE MARREC
États-transitions et activités
40
de Nantes Olivier LE MARREC États-transitions et activités 40 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États composites n  Afin
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États composites
n  Afin de faciliter la lecture, un état peut être composé de plusieurs
sous-états
A
B
A
B
E1
E1
X
E2
E2
E2
C
C
Université de Nantes
Olivier LE MARREC
États-transitions et activités
41
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États composites n  Il
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États composites
n  Il est possible de masquer le contenu d’un état-automate, tout en
signalant son existence, en employant une icône spécifique :
X
E2
C
A
B
E1
Université de Nantes
Olivier LE MARREC
États-transitions et activités
42
de Nantes Olivier LE MARREC États-transitions et activités 42 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États composites n  La
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États composites
n  La transition d’entrée d’un état composite ne concerne qu’un seul
sous-état
n  Sans jeton de fin, la transition de sortie d’un état composite
s’applique à tous ses sous-états
A
B1
C
B2
B3
Université de Nantes
Olivier LE MARREC
États-transitions et activités
43
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États composites n  Le
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États composites
n  Le masquage peut poser des problèmes en cas de transitions inter-
niveaux.
n  Il faut alors pouvoir exprimer le fait que la transition arrive sur un
état précis. Ceci se matérialise grâce aux souches, que l’on peut
nommer ou non
automA::état1
état2
non nommée
Souches nommées
Université de Nantes
Olivier LE MARREC
États-transitions et activités
44
de Nantes Olivier LE MARREC États-transitions et activités 44 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États composites n  Pour
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États composites
n  Pour rappel, l’utilisation de transitions inter-niveaux est fortement
déconseillé car elles complexifient la compréhension des modèles.
B1
C
A
B2
B3
C
A
Université de Nantes
Olivier LE MARREC
États-transitions et activités
45
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États historiques n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États historiques
n  Dans un automate hiérarchique, le plus difficile c’est de
« remonter ».
n  En UML, la règle par défaut est la reprise à l’état initial. Si l’on veut
revenir dans l’état quitté lors de la « descente », il faut mettre en
œuvre un mécanisme spécifique de mémorisation.
n  Ce mécanisme conduit à utiliser des états historiques.
H
H*
Université de Nantes
Olivier LE MARREC
États-transitions et activités
46
de Nantes Olivier LE MARREC États-transitions et activités 46 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États historiques H n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États historiques
H
n  Un état historique, également qualifié d’état historique plat, est un
pseudo-état qui mémorise le dernier sous-état actif d’un état
composite.
n  Une transition ayant pour cible l’état historique est équivalente à
une transition qui a pour cible le dernier état visité de l’état
englobant.
n  Graphiquement, il est représenté par un cercle contenant un H.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
47
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États historiques H H =
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États historiques
H
H
= <vide>
H
= 2.1
H
= 2.2
2.3
2.2
H
3
2.4
2.2.2
2.2.3
Université de Nantes
Olivier LE MARREC
États-transitions et activités
48
de Nantes Olivier LE MARREC États-transitions et activités 48 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés H* n  États historiques n 
États-transitions et activités
Diagramme états-transitions > Eléments avancés
H*
n  États historiques
n  Il est également possible de définir un état historique profond
représenté graphiquement par un cercle contenant un H*.
n  Cet état historique profond permet d’atteindre le dernier état visité
dans la région, quel que soit sont niveau d’imbrication, alors que le
l’état historique plat limite l’accès aux états de son niveau
d’imbrication.
n  Graphiquement, il est représenté par un cercle contenant un H*.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
49
États-transitions et activités Diagramme états-transitions > Eléments avancés H* n  États historiques
États-transitions et activités
Diagramme états-transitions > Eléments avancés
H*
n  États historiques
Université de Nantes
Olivier LE MARREC
États-transitions et activités
50
de Nantes Olivier LE MARREC États-transitions et activités 50 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États de synchronisation
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États de synchronisation
n  Dans un état composite formé d’états concurrents, il est parfois
nécessaire de synchroniser des transitions appartenant à des sous-
automates différents. C’est le rôle des états de synchronisation.
n  Dans l’état de synchronisation, il peut y avoir un nombre ou un
astérisque (*). Il s’agit d’une limite sur le nombre de
déclenchements de la transition de sortie.
A
B
X
Y
n  on ne peut quitter X pour Y que si dans le même temps, on quitte A
Université de Nantes
Olivier LE MARREC
États-transitions et activités
51
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États de synchronisation
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États de synchronisation
n  Dans un état composite formé d’états concurrents, il est parfois
nécessaire de synchroniser des transitions appartenant à des sous-
automates différents. C’est le rôle des états de synchronisation.
n  Dans l’état de synchronisation, il peut y avoir un nombre ou un
astérisque (*). Il s’agit d’une limite sur le nombre de
déclenchements de la transition de sortie.
A
B
X
Y
n  on ne peut quitter X pour Y que si dans le même temps, on quitte A
Université de Nantes
Olivier LE MARREC
États-transitions et activités
52
de Nantes Olivier LE MARREC États-transitions et activités 52 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États et transitions
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États et transitions hérités
n  Les automates décrivent le comportement de classes. Celles-ci
peuvent être reliées les unes aux autres par des relations
d’héritage.
n  Il est donc possible, pour une classe fille, hériter d’un
comportement d’une classe mère
n  Exemple :
n  Gestion des réunions d’une association
Université de Nantes
Olivier LE MARREC
États-transitions et activités
53
États-transitions et activités Diagramme états-transitions > Eléments avancés n  États et transitions
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États et transitions hérités
n  Comportement de la classe Réunion
/ PROGRAMMER
Prévue
MATIN / DÉTAILS ?
Passée
[DATE_JOUR < DATE_PREVUE - DELAI]
[DATE_JOUR = DATE_PREVUE - DELAI]
CONVOCATION / MODIF_ETAT
Université de Nantes
Olivier LE MARREC
États-transitions et activités
54
de Nantes Olivier LE MARREC États-transitions et activités 54 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > Eléments avancés n  États et transitions
États-transitions et activités
Diagramme états-transitions > Eléments avancés
n  États et transitions hérités
n  Comportement de la classe AG
Clôturée
[>= 2 / 3] / MODIF_ETAT
[< 2 / 3] / MODIF_DATE et MODIF_ETAT
/ PROGRAMMER
Prévue
MATIN / DÉTAILS ?
FERMETURE_BUREAU
/ NB_VOTANTS ?
Passée
[DATE_JOUR < DATE_PREVUE - DELAI]
[DATE_JOUR = DATE_PREVUE - DELAI]
CONVOCATION / MODIF_ETAT
Université de Nantes
Olivier LE MARREC
États-transitions et activités
55
États-transitions et activités Diagramme états-transitions n  Exemple Début Etat Evènement Evènement
États-transitions et activités
Diagramme états-transitions
n  Exemple
Début
Etat
Evènement
Evènement Temporel
Garde
Transition
Fin
Université de Nantes
Olivier LE MARREC
États-transitions et activités
56
de Nantes Olivier LE MARREC États-transitions et activités 56 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions n  Exemple Université de Nantes Olivier LE MARREC
États-transitions et activités
Diagramme états-transitions
n  Exemple
Université de Nantes
Olivier LE MARREC
États-transitions et activités
57
États-transitions et activités Diagramme états-transitions > exercice n  Enoncé n  Nous allons tenter de
États-transitions et activités
Diagramme états-transitions > exercice
n  Enoncé
n  Nous allons tenter de décrire la vie des étudiants de la MIAGE de
Nantes, exprimée au travers d’un ensemble d’états et de transitions
entre ces états.
n  La scolarité dure trois ans. Nous allons, dans un premier temps,
associer un état à chaque année. Nous appellerons ces états
EnPremièreAnnée, EnDeuxièmeAnnée et EnTroisièmeAnnée.
n  Plusieurs événements peuvent survenir durant le parcours des
étudiants. Voici ceux qui ont été recensés :
n  Admission (qui conditionne le passage dans l’année supérieure ou la
délivrance du diplôme final),
n  Redoublement (qui maintient l’étudiant au même niveau),
n  Exclusion (qui interrompt la scolarité de l’étudiant),
n  Sélection (pour l’entrée en première année)
n  Abandon. Ce dernier événement, qui peut survenir n’importe quand
durant la formation, entraîne la disparition de l’étudiant de la MIAGE.
n  Question
n  Simplifiez le modèle obtenu précédemment
Université de Nantes
Olivier LE MARREC
États-transitions et activités
58
de Nantes Olivier LE MARREC États-transitions et activités 58 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme états-transitions > exercice n  Restitution Université de Nantes
États-transitions et activités
Diagramme états-transitions > exercice
n  Restitution
Université de Nantes
Olivier LE MARREC
États-transitions et activités
59
Plan 1.  Introduction 2.  Diagramme états-transitions 3.  Diagramme d’activités 4.  Conclusion
Plan
1. 
Introduction
2. 
Diagramme états-transitions
3. 
Diagramme d’activités
4. 
Conclusion
Université de Nantes
Olivier LE MARREC
États-transitions et activités
60
de Nantes Olivier LE MARREC États-transitions et activités 60 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités n  Définitions n  UML permet de représenter
États-transitions et activités
Diagramme dʼactivités
n  Définitions
n  UML permet de représenter graphiquement le comportement d'une
méthode, le déroulement d'un cas d'utilisation ou d’un processus
métier, à l'aide de diagrammes d'activités.
n  Expression du flux de contrôle, comme un diagramme de
séquences, mais avec une attention particulière sur les opérations
plutôt que les objets.
n  Un diagramme d’activités est un diagramme états-transitions dans
lequel les états sont des activités.
n  De ce fait, toutes les règles présentées précédemment sont
applicables à ces diagrammes
Université de Nantes
Olivier LE MARREC
États-transitions et activités
61
États-transitions et activités Diagramme dʼactivités > Définition n  Activité n  Étape particulière
États-transitions et activités
Diagramme dʼactivités > Définition
n  Activité
n  Étape particulière dans l'exécution
n  Une activité peut être composées d’autres activités
n  La notation diffère quelque peut d’un diagrammes à d’états-transitions
X
n  Contrairement au diagramme états-transitions, il n’y a pas
d’obligation d’unicité des noms donnés aux états.
B
A
A
C
Université de Nantes
Olivier LE MARREC
États-transitions et activités
62
de Nantes Olivier LE MARREC États-transitions et activités 62 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités > Définition n  Transition n  Les activités sont
États-transitions et activités
Diagramme dʼactivités > Définition
n  Transition
n  Les activités sont reliées par des transitions automatiques
n  Inutile d'indiquer un nom d'évènement
Action1
Action2
n  Les gardes sont mutuellement exclusives et exhaustives
Action1
[c1]
[c2]
Action2
Action3
Université de Nantes
Olivier LE MARREC
États-transitions et activités
63
États-transitions et activités Diagramme dʼactivités > Définition n  Point de jonction n  Le point de
États-transitions et activités
Diagramme dʼactivités > Définition
n  Point de jonction
n  Le point de jonction est représenté par un losange
n  Le point de jonction peut être :
n  Un débranchement : diviser des transitions
n  Une jointure : regrouper des transitions
n  Il existe une garde par défaut, [sinon], qui permet d’indiquer ce qu’il
faut faire si toutes les autres conditions ne sont pas réalisées.
Action1
[c1]
[sinon]
Action2
Action3
Université de Nantes
Olivier LE MARREC
États-transitions et activités
64
de Nantes Olivier LE MARREC États-transitions et activités 64 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités > Définition n  Synchronisation n  Une
États-transitions et activités
Diagramme dʼactivités > Définition
n  Synchronisation
n  Une synchronisation peut être utilisée au niveau des points de
jonction.
Action1
Action2
Action3
Action4
Université de Nantes
Olivier LE MARREC
États-transitions et activités
65
États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Les diagrammes d’activités
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Les diagrammes d’activités permettent aussi de faire ressortir
des informations complémentaires :
n  Les signaux émis et traités
n  Les objets manipulés
n  Le partage des responsabilités
Université de Nantes
Olivier LE MARREC
États-transitions et activités
66
de Nantes Olivier LE MARREC États-transitions et activités 66 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Signaux n  Lors de la
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Signaux
n  Lors de la réalisation du traitement, il est peut être utile de
manipuler des messages (sigaux)
n  Signal émis
n  Emission d’un signal vers l’extérieur par une activité
n  Signal reçu
n  Réception par une activité d’un signal extérieur
n  Temporisation
Université de Nantes
Olivier LE MARREC
États-transitions et activités
67
États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Signaux Université de Nantes
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Signaux
Université de Nantes
Olivier LE MARREC
États-transitions et activités
68
de Nantes Olivier LE MARREC États-transitions et activités 68 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Objets n  Un flux d’objet
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Objets
n  Un flux d’objet représente la participation d’un objet dans un flux
de contrôle.
n  Les flux d’objets sont représentés par des relations de dépendance
entre objets et états d’action ou d’activités.
Établir le devis
d : Devis
Commander
Université de Nantes
Olivier LE MARREC
États-transitions et activités
69
États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Objets n  Les changements
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Objets
n  Les changements d’états de ces objets peuvent figurer dans les
schémas
c : Commande
Établir le devis
Facturer
[passée]
c : Commande
Livrer
Payer
[payée]
Université de Nantes
Olivier LE MARREC
États-transitions et activités
70
de Nantes Olivier LE MARREC États-transitions et activités 70 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Responsabilités n  Afin
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Responsabilités
n  Afin d'organiser un diagramme d'activités selon les différents
responsables des actions représentées, il est possible de définir des
couloirs d'activités.
n  Un couloir regroupe visuellement les activités qui ont des affinités
sémantiques.
n  Une activité appartient à un et un seul couloir, mais les transitions
peuvent franchir les couloirs.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
71
États-transitions et activités Diagramme dʼactivités > Eléments avancés n  Responsabilités client vendeur
États-transitions et activités
Diagramme dʼactivités > Eléments avancés
n  Responsabilités
client
vendeur
Se renseigner
Établir le devis
d : Devis
Commander
n  La position des objets dans ce type de schéma n’est pas significative.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
72
de Nantes Olivier LE MARREC États-transitions et activités 72 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

Plan 1.  Introduction 2.  Diagramme états-transitions 3.  Diagramme d’activités 4.  Conclusion
Plan
1. 
Introduction
2. 
Diagramme états-transitions
3. 
Diagramme d’activités
4. 
Conclusion
Université de Nantes
Olivier LE MARREC
États-transitions et activités
73
États-transitions et activités Conclusion n  Diagrammes états-transitions et diagrammes d’activités servent à
États-transitions et activités
Conclusion
n  Diagrammes états-transitions et diagrammes d’activités servent
à préciser le comportement des objets actifs.
n  Les diagrammes états-transitions,
n  en décrivant le cycle de vie d’un objet (au travers des événements
perçus, des actions réalisées à la suite de leur perception, des
transitions d’un état à l’autre), participent à la compréhension du
système et des objets « complexes ».
n  Les diagrammes d’activités,
n  initialement prévus pour décrire ce qui se passe lorsqu’un objet est
dans un état donné, servent aussi à représenter un traitement
réparti entre plusieurs objets. C’est alors un mélange de séquences
et d’activités.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
74
de Nantes Olivier LE MARREC États-transitions et activités 74 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Conclusion n  Un diagramme états-transitions décrit : n  pour une classe
États-transitions et activités
Conclusion
n  Un diagramme états-transitions décrit :
n  pour une classe donnée, les différents états par lesquels elle passe,
ainsi que les changements possibles
n  les actions réalisées lorsque les objets sont dans un état donné et/
ou lors d’une transition.
n  Un diagramme d’activités décrit :
n  pour une classe et un état donné, les actions réalisées.
n  et représente un organigramme, voire un algorithme.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
75
États-transitions et activités Conclusion n  La phase d’analyse s’achève avec la production : n  D’un
États-transitions et activités
Conclusion
n  La phase d’analyse s’achève avec la production :
n  D’un diagramme de cas d’utilisation
n  Pour chaque cas d’utilisation, une description textuelle et, si
nécessaire, la mise en place de scénarios (diagramme de séquences
simplifié)
n  D’un diagramme de classes complet enrichi au fur et à mesure
n  De nouveaux concepts (classes) apparaissent
n  Des nouveaux types sont manipulés (EnsembleDeXXX,
GestionDeXXX, etc.)
n  De l’ensemble des diagrammes d’interaction
n  Séquences ou communication
n  Quelques diagrammes états-transitions et d’activités
n  Relatifs aux classes actives.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
76
de Nantes Olivier LE MARREC États-transitions et activités 76 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

États-transitions et activités Conclusion n  Cette phase d’analyse peut être complétée par n  une étude
États-transitions et activités
Conclusion
n  Cette phase d’analyse peut être complétée par
n  une étude (peu poussée) des interfaces,
n  une vérification de la cohérence (indispensable !),
n  des mesures (pour évaluer la qualité des modèles produits),
n  un prototype, basé que les diagrammes d’interaction.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
77
Notes et références n  L’usage de ce document est soumis à l’autorisation écrite de son
Notes et références
n  L’usage de ce document est soumis à
l’autorisation écrite de son auteur :
olivier.lemarrec@gmail.com
n  Certains éléments ou exemples ont été réalisés
avec le concours de M. Vailly, maître de conférence
à la Faculté de Science et des Techniques.
Université de Nantes
Olivier LE MARREC
États-transitions et activités
78
de Nantes Olivier LE MARREC États-transitions et activités 78 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités

V2.1 Université de Nantes États-transitions et activités Fin Olivier LE MARREC – olivier.lemarrec@gmail.com
V2.1
Université de Nantes
États-transitions et activités
Fin
Olivier LE MARREC – olivier.lemarrec@gmail.com
[X5I0140]
Modélisation UML
79
– olivier.lemarrec@gmail.com [X5I0140] Modélisation UML 79 Modélisation UML – États-transitions et activités

Modélisation UML – États-transitions et activités