Professional Documents
Culture Documents
Universit de NANTES
Alain VAILLY
AVERTISSEMENT
Lusage de ce document, sous quelque forme que ce soit (lectronique, papier), titre personnel ou devant des tudiants, est autoris et libre de droits, la condition expresse quil soit conserv dans ltat (et notamment quil comporte la page de garde et cet avertissement). Tout autre usage, notamment commercial, toute diffusion via un serveur informatique, une liste de diffusion est soumis laccord PRALABLE de son auteur. Ce document constitue un TOUT. Toute coupe, toute modification non autorise par son auteur sera assimile une atteinte aux droits de lauteur et poursuivie comme telle devant les tribunaux.
Diapositive n 2
Universit de NANTES
Alain VAILLY
Diapositive n 3
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Evaluation
Contexte
MEDAL
Exercices
Etudes de cas
Auto-valuation
Universit de NANTES
Diapositive n 4
M.E.D.A.L.
3) Diagramme dactivits
4) Utilisation de ces diagrammes 5) Conclusion
- Outils
- Conclusion
Diapositive n 5
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
1) Introduction
Dans notre travail de dfinition des classes impliques dans les traitements mettre en uvre, il y a plusieurs techniques associes. Les diagrammes de collaborations permettent de mettre laccent sur la structure relationnelle des classes (sur les liens quelles sont les unes par rapport aux autres). Les diagrammes de squences, quant eux, apportent un lment nouveau, le temps. Ils mettent en vidence lordre dans lequel les changes se font entre les classes.
Diapositive n 6
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
1) Introduction
La plupart du temps, le gros des fonctions offertes par le logiciel est implment sous la forme dchanges raliss dans un certain ordre, entre les classes et/ou entre les classes et lextrieur. Durant ces changes, certains objets jouent un rle plus important que dautres, en assurant le pilotage, le contrle du processus. Ces lments spciaux sont appels actifs, par opposition passifs, qui dsignent des objets se contentant de rpondre une sollicitation.
Diapositive n 7
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
1) Introduction
Ces objets actifs sont ceux qui possdent toute lintelligence du systme, dans la mesure o ils influent sur le droulement des oprations (en fonction dune rponse -ou dune non-rponse-, ils enverront un message X gauche ou droite, ou un message Y...). Si nous voulons dfinir de faon complte les classes impliques dans les traitements mettre en uvre, il nous fait imprativement capter ces comportements, les modliser pour pouvoir les reproduire.
Diapositive n 8
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
1) Introduction
Cette modlisation (qui ne concerne que certaines classes) se fait grce deux types de diagrammes bien spcifiques, les diagrammes tats-transitions et les diagrammes dactivits. Les premiers ressemblent des automates, les seconds des organigrammes. Les premiers mettent laccent sur la notion dtat, les seconds sur celle dactivit. Avec les diagrammes tats-transitions on pourra indiquer par quels tats passe un objet ; avec les diagrammes dactivits, nous nous intresserons aux actions excutes. Les deux ne sont toutefois que des variantes lun de lautre.
Diapositive n 9
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
1) Introduction
rien (il nest pas actif)
diagramme tats-transitions
choix de modlisation
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.1) Introduction
UML est une notation destine modliser un systme selon le paradigme objets. Celui-ci regroupe en une seule entit une dimension statique (les informations), une dimension fonctionnelle (les oprations) et une dimension dynamique (le comportement).
Ce dernier sexprime par des diagrammes de squences, des diagrammes de collaboration et des automates. Diagrammes tatstransitions (ou D.E.T.)
Diapositive n 11
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.1) Introduction
Ces diagrammes tats-transitions sont, en fait, des automates hirarchiques, parallles, associs aux classes ou, plus exactement, certains classes dont le comportement est volutif et quil est important de dcrire.
Ces automates sont troitement lis aux classes, par les actions excutes durant les transitions ou dans les tats (ce sont des oprations de la classe), par les paramtres vhiculs par les messages
Diapositive n 12
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.1) Introduction
Diagramme de squences
Une classe entoure est une classe qui a un comportement dynamique. Elle est associe un ou plusieurs diagrammes E-T.
Diapositive n 13
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.1) Introduction
Diagramme de collaborations
CLASSE2 CLASSE4
Une classe entoure est une classe qui a un comportement dynamique. Elle est associe un ou plusieurs diagrammes E-T.
Diapositive n 14
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.1) Introduction
EnFonctionnement
INIT MONTER
pallier
dmarrage
ARRET INIT ARRIVE
monte
H*
ARRET
REPRISE
stopp
Diapositive n 15
Universit de NANTES
REPRISE
STOP
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.2) Reprsentations graphiques
Un tat dun diagramme tats-transitions peut se noter ainsi : Bandeau des actions, activits et inclusions
Nom de ltat
Entre : action Faire : activit Sortie : action
Bandeau tat
Toutes ces notions sont dtailles plus avant dans cette partie.
Diapositive n 16
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.2) Reprsentations graphiques
Elle peut aussi correspondre une transition et se noter ainsi : Dautres formes, plus complexes, sont possibles :
Diapositive n 17
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagramme tats-transitions
2.3) Rappels
Un automate parallle est un automate dans lequel un tat correspond un ensemble dautomates lis les uns aux autres par un produit. Plutt que de reprsenter le produit, ce sont les automates entrant dans sa composition qui sont dcrits.
A1 A2
A1 x A2
Diapositive n 18
G1
G3 G2
G1 x G2 x G3
Universit de NANTES Alain VAILLY
M.E.D.A.L.
Diapositive n 19
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
inapte
[OK] VISITE [pas OK] VISITE
apte PointDeVueAviateur
[SOLDE 0] VOL
PointDeVueClient
dbiteur
[ASSEZ] DEPOT [pas ASSEZ] DEPOT
solvable
Diapositive n 20
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
ID
AS AD
- inapte et dbiteur,
- apte et solvable, - apte et dbiteur.
Diapositive n 21
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
ID
[OK] VISITE [NBH > 300h]
[ASSEZ] DEPOT
IS
[NBH > 300h]
[SOLDE 0] VOL
AD
[pas ASSEZ] DEPOT
[ASSEZ] DEPOT
AS
[SOLDE > 0] VOL
Diapositive n 22
Universit de NANTES
M.E.D.A.L.
inapte
[OK] VISITE [pas OK] VISITE
apte PointDeVueAviateur
[SOLDE 0] VOL
PointDeVueClient
dbiteur
[ASSEZ] DEPOT [pas ASSEZ] DEPOT
solvable
Diapositive n 23
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
pb2
pb1
Diapositive n 24
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 25
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 26
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 27
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Y.1.5
PointDeVueX
PointDeVueY
Y.2.7
B
Diapositive n 28
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
difficile
Il est, bien sur, possible de changer ces deux lois par dfaut en jouant intelligemment sur les transitions inter-niveaux.
X
X
Diapositive n 29
Y.1.1
Y.1.2
PointDeVueX
PointDeVueY Y.2.1
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
difficile
Il est, bien sur, possible de changer ces deux lois par dfaut en jouant intelligemment sur les transitions inter-niveaux.
Y.1.1
Y.1.2
X Y.2.1
PointDeVueX
PointDeVueY
Diapositive n 30
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
difficile
Il est, bien sur, possible de changer ces deux lois par dfaut en jouant intelligemment sur les transitions inter-niveaux.
Y.1.x
Y.1.5
Diapositive n 31
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.4) propos des actions dans les tats
Les fonctions de sortie qui sont utilises dans les tats correspondent des actions. Il sagit doprations de la classe dont le comportement est dcrit par le diagramme tatstransitions.
Celles-ci sont types, le type tant exprim par une tiquette prcdent laction.
<tiquette> : <action>
Diapositive n 32
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.4) propos des actions dans les tats
<entry> : <action>
Il y a trois types : - entry : laction sera excute chaque entre dans ltat, quelque soit lvnement dclenchant lentre. Lorsque laction est termine, lobjet reste dans ltat, en attente.
Nom de ltat
EVT1
Entre : actionX32
EVT2
EVT3
Diapositive n 33
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.4) propos des actions dans les tats
<exit> : <action>
Il y a trois types : - exit : laction sera excute chaque sortie de ltat, quelque soit lvnement dclenchant la sortie.
Nom de ltat
EVT5
Sortie : actionZY7
EVT3
Diapositive n 34
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.4) propos des actions dans les tats
Il y a trois types :
- do : laction sera excute puis lautomate changera dtat. Il passera dans ltat suivant la fin de lexcution et ira dans ltat reli celui-ci par une transition vide ().
Nom de ltat
Faire : actionPU993
B
EVT3
Diapositive n 35
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5) Extensions UML
Les diagrammes tats-transitions dUML sont des automates hirarchiques parallles avec les particularits suivantes :
Diapositive n 36
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
Lobjectif essentiel de cette extension est clairement la factorisation. Une transition composite est constitue de trois parties : - un point de jonction, - une ou plusieurs transitions situes en amont, - une ou plusieurs transitions situes en aval.
Diapositive n 37
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
vnement
EVT1
point de jonction
[COND1]
[COND2]
gardes
Diapositive n 38
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
[COND1] / EVT1
[COND2] / EVT1
Diapositive n 39
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
fork
A
EVT1 / ACTION2
[COND1]
[COND2]
[COND3]
B C
Diapositive n 40
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
A
EVT1 / ACTION2
[COND2]
[COND3]
EVT1
[COND2]
Diapositive n 41
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.1) Transitions composites
join
A
Il est possible de faire linverse. Ltat A sera atteint si lvnement EVT1 est ralis OU si lvnement EVT2 lest aussi.
EVT1
EVT2
Diapositive n 42
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
Dans un automate hirarchique, le plus difficile cest de remonter . En UML, la rgle par dfaut est la reprise ltat initial. Si lon veut revenir dans ltat quitt lors de la descente , il faut mettre en uvre un mcanisme spcifique de mmorisation. Ce mcanisme conduit utiliser des tats historiques.
H*
Diapositive n 43
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.3 H
2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 44
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
Rinage
H
Lavage
Schage
OUVERTURE_PORTE
FERMETURE_PORTE
Attente
Diapositive n 45
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.3 H
2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 46
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.3 H
2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 47
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.1
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 48
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 49
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 50
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 51
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 52
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 53
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 54
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 55
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.2
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 56
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H
La mmorisation ne concerne quun seul niveau (il y a donc UNE variable simple).
2.3
3 2.3 H 2.2
4
2.4 5 2.5.2 2.5.3
Lors de la descente, la mmoire reoit le nom de ltat quitt. Lors de la remonte, ltat mmoris est celui qui est retrouv.
Alain VAILLY
Diapositive n 57
Universit de NANTES
M.E.D.A.L.
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 58
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
EnFonctionnement
INIT
MONTER
pallier
dmarrage
ARRET INIT ARRIVE
monte
H*
ARRET
REPRISE
stopp
Diapositive n 59
Universit de NANTES
REPRISE
STOP
Alain VAILLY
M.E.D.A.L.
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 60
Universit de NANTES
M.E.D.A.L.
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 61
Universit de NANTES
M.E.D.A.L.
2.1
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 62
Universit de NANTES
M.E.D.A.L.
2.2
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 63
Universit de NANTES
M.E.D.A.L.
2.2
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 64
Universit de NANTES
M.E.D.A.L.
2.2 2.5.1
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 65
Universit de NANTES
M.E.D.A.L.
2.2 2.5.2
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 66
Universit de NANTES
M.E.D.A.L.
2.2 2.5.3
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 67
Universit de NANTES
M.E.D.A.L.
2.2 2.5.4
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 68
Universit de NANTES
M.E.D.A.L.
2.2
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 69
Universit de NANTES
M.E.D.A.L.
2.2
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 70
Universit de NANTES
M.E.D.A.L.
2.3
Niveau 2 Niveau 2.5
2) Diagrammes tats-transitions
2.5.2) tats historiques
tat historique H*
La mmorisation concerne tous les niveaux. Il y a donc un tableau de variables, une par niveau. chaque descente, la mmoire reoit le nom de ltat quitt. la remonte, ltat atteint est celui qui est mmoris dans la case correspondant au niveau.
Alain VAILLY
2.3 H*
2.2
4
2.4 5 2.5.2 2.5.3
Diapositive n 71
Universit de NANTES
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
Lobjectif essentiel de cette extension est la simplification des schmas et, souvent, la factorisation. Un tat composite est un tat-automate. Les sous-tats peuvent tre disjoints et mutuellement exclusifs (on a alors un automate hirarchique) ou concurrents (on a alors un automate parallle).
Diapositive n 72
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
A
E2
E1
B
E2
E1
E2
Diapositive n 73
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
inapte
[OK] VISITE [pas OK] VISITE
apte PointDeVueAviateur
[SOLDE 0] VOL
PointDeVueClient solvable
dbiteur
[ASSEZ] DEPOT
Diapositive n 74
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
Il est possible de masquer le contenu dun tat-automate, tout en signalant son existence, en employant une icne spcifique :
Diapositive n 75
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
Le masquage peut poser des problmes en cas de transitions directes, inter-niveaux. Il faut alors pouvoir exprimer le fait que la transition arrive sur un tat prcis. Ceci se matrialise grce aux souches, que lon peut, ou non, nommer :
automA::tat1
tat2
non nomm
Diapositive n 76
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.3) tats composites
B1
B2 B3
C
A
Diapositive n 77
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.4) tats sous-automates
Avec un tat composite form dtats disjoints masqus, il est ncessaire dindiquer quelque part quel automate est inclus dans cet tat composite.
Nom de ltat
Inclure : automate328
Diapositive n 78
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.4) tats sous-automates
Fermeture
Inclure : Fermeture des issues
FERMER PORTES / FERMER /
Porte::Fermeture
ARRET URGENCE
blocage
ACQUITTEMENT
Diapositive n 79
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.5) tats de synchronisation
Dans un tat composite form dtats concurrents, il est parfois ncessaire de synchroniser des transitions appartenant des sous-automates diffrents. Cest le rle des tats de synchronisation.
Diapositive n 80
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.5) tats de synchronisation
Dans ltat de synchronisation, il peut y avoir un nombre ou un astrisque (*). Il sagit dune limite sur le nombre de dclenchements de la transition de sortie.
Cet tat de synchronisation est lquivalent dune place dans un rseau de PETRI. Ce nombre est la capacit de la place.
Diapositive n 81
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.6) tats et transitions hrits
Les automates dcrivent le comportement de classes. Celles-ci peuvent tre relies les unes aux autres par des relations dhritage. Il semble donc naturel de pouvoir, pour une classe fille, hriter dun comportement dune classe mre. On a alors un sous-automate hrit.
Pas vident !
Diapositive n 82
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.6) tats et transitions hrits
REUNION
date : Date nature : EnumR odj : String tat : EnumC dlai : Entier
AG
nb_votants : Entier
votant_en_plus () nb_votants ? ()
Diapositive n 83
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.6) tats et transitions hrits
/ PROGRAMMER
Prvue
MATIN / DTAILS ?
Passe
[DATE_JOUR < DATE_PREVUE - DELAI] [DATE_JOUR = DATE_PREVUE - DELAI] CONVOCATION / MODIF_ETAT
Diapositive n 84
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
2) Diagrammes tats-transitions
2.5.6) tats et transitions hrits
Clture
Comportement de la classe AG
[< 2 / 3] / MODIF_DATE et MODIF_ETAT
[>= 2 / 3] / MODIF_ETAT
/ PROGRAMMER
Prvue
MATIN / DTAILS ? FERMETURE_BUREAU / NB_VOTANTS ?
Passe
[DATE_JOUR < DATE_PREVUE - DELAI] [DATE_JOUR = DATE_PREVUE - DELAI] CONVOCATION / MODIF_ETAT
Diapositive n 85
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Figure extraite du livre de P.A. MULLER (cf biblio)
3) Diagrammes dactivits
Ouvrir la fentre
Un diagramme dactivits est un diagramme tatstransitions dans lequel les tats sont des activits. Il sert modliser une activit dans un tat ou spcifier le droulement dune opration dans une classe.
Arer
Fermer la fentre
Diapositive n 86
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Les tats sont ultra-simplifis par rapport ceux exprims dans un diagramme tats-transitions. Il ny a plus QUE des activits.
tatXY37
Faire : ActivitZY4
diagramme dactivits
ActivitZY4
diagramme tats-transitions
Diapositive n 87
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
diagramme dactivits
E1
Faire : Action1
Action1
E2
Faire : Action2
Action2
diagramme tats-transitions
Diapositive n 88
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Comme un diagramme tats-transitions (cest un diagramme tats-transitions !), un diagramme dactivits a un tat initial (cest le dbut du programme ) et un tat final (cest la fin du programme ).
tat initial
Peindre Amnager
tat final
Diapositive n 89
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Comme dans les diagrammes tats-transitions, un tat dun diagramme dactivits (il sagit donc dune activit) peut comprendre lui-mme une ou plusieurs autres activits.
C C
tats sous-activits
tats sous-tats
Les rgles de passage dun niveau lautre sont les mmes dans les deux cas.
Diapositive n 90
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Lorsque ltat sous-activits est atteint, il invoque le diagramme dactivits embot. Celui-ci ayant un tat initial, cest par l que ce diagramme embot commence. Lorsque ltat final de ce diagramme dactivits embot est atteint, ltat sous-activits est quitt et le cours normal des choses reprend.
A B C
Peindre
Amnager
Diapositive n 91
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Contrairement, toutefois, au diagramme tats-transitions, il ny a pas dobligation dunicit des noms donns aux tats. Dans un MME diagramme dactivits, PLUSIEURS tatsactivits peuvent avoir le MME nom. Cela correspond simplement linvocation de la mme activit plusieurs moments du processus ainsi dcrit.
A B A B C A C
tats sous-activits
Diapositive n 92
tats sous-tats
Universit de NANTES Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Les transitions dun diagramme dactivits, en gnral, reprsentent la fin dune activit et le passage lactivit suivante. Ce sont, en gnral, des transitions non nommes (transitions ). Il ny a pas dautres vnements dclencheurs, lexception des signaux qui sont changs par les objets. Outre les signaux, on peut trouver des conditions, des synchronisations ainsi que des points de jonctions sur ces transitions automatiques .
Diapositive n 93
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Les transitions entre deux activits peuvent dpendre de tests placs sur celles-ci et excutes avant le branchement . Ces conditions, appeles gardes, sont notes sur les transitions elles-mmes.
Action1
[c1]
Action2
[c2]
Action3
Diapositive n 94
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
La notion de point de jonction existe galement, celui-ci tant matrialis par un losange :
Action1
[c1]
[c2]
Action2
Action3
Il existe une garde par dfaut, [sinon], qui permet dindiquer ce quil faut faire si toutes les autres conditions ne sont pas ralises. Ceci sous-entend quil y a un ordre dans lvaluation des conditions.
Diapositive n 95
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Ces points de jonction fonctionnent dans les deux sens (il sagit alors non pas dun fork, mais dun join) :
Peindre
Poser moquette
[revtement = parquet]
Amnager
Poser parquet
Laquer
Diapositive n 96
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Les signaux peuvent se modliser de faon spcifique :
Une fois lactivit Donner une consigne excute, le signal Donner une consigne est envoye lobjet Thermostat. Celui-ci rpond en envoyant un signal Consigne atteinte, dont la rception lance lactivit Fermer la fentre.
Ouvrir la fentre
Arer
Thermostat
Consigne atteinte
Fermer la fentre
Diapositive n 97
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Signal
XY
Envoi dun signal vers lobjet XY. Le lien entre le signal et le destinataire est facultatif.
Signal
XY
Rception dun signal provenant de lobjet XY. Le lien entre le signal et lmetteur est facultatif.
Diapositive n 98
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Les points de jonction permettent de faire des dbranchements, des regroupements entre transitions. Il est aussi possible de faire appel la notation utilise dans les rseaux de PETRI et de reprsenter une synchronisation :
Lactivit Action1 termine, il y a lancement SIMULTAN (ie. en parallle) des deux suivantes , Action2 et Action3.
Action1
Action2
Action3
Diapositive n 99
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Action1 Action2 Action3
Action4
Lorsque les TROIS activits, Action1, Action2 et Action3 sont termines, Action4 est lance. Comme dans les rseaux de PETRI, la logique sous-jacente est celle du ET. NON et OUI ne sont pas exprimables par cette technique.
Diapositive n 100
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Figure extraite du livre de P.A. MULLER (cf biblio)
3) Diagrammes dactivits
Comme on vient de le voir, il est possible de faire clairement apparatre les objets dans un diagramme dactivits. Selon le rle que ceux-ci vont jouer (dclencheurs dactivits, objets passifs utiliss par une activit ou objets modifis par une autre), ils seront placs avant ou aprs celles-ci :
tablir le devis
d : Devis
Commander
Diapositive n 101
Universit de NANTES
Alain VAILLY
3) Diagrammes dactivits
Les changements dtats de ces objets peuvent figurer dans les schmas :
tablir le devis
c : Commande [passe]
Facturer
Livrer
Figure extraite du livre de P.A. MULLER (cf biblio)
c : Commande [paye]
Payer
Diapositive n 102
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Figure extraite du livre de P.A. MULLER (cf biblio)
3) Diagrammes dactivits
client Les diagrammes dactivits peuvent tre dcoups en tranches (on parle de traves) pour mieux mettre en vidence les diffrentes responsabilits au sein dun service.
Se renseigner
vendeur
tablir le devis
d : Devis
Commander
Diapositive n 103
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Figure extraite du livre de P.A. MULLER (cf biblio)
3) Diagrammes dactivits
Le client se renseigne et commande. Le vendeur tablit le devis. Ceci ne se fait quaprs que le client se soit renseign. Ltablissement dun devis est lorigine de la cration dun objet Devis. Celui-ci est utilis par la commande.
Diapositive n 104
client
Se renseigner
vendeur
tablir le devis
d : Devis
Commander
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
3) Diagrammes dactivits
Diapositive n 105
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Figure extraite du livre de P.A. MULLER (cf biblio)
3) Diagrammes dactivits
enseignant tudiant jury
Composer
valuer
Diapositive n 106
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 107
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
d but relecture
choisir lecteurs
pr venir le responsable
:Responsable Editorial
choix lecteur 2
complet [oui]
Attente
lecteurs pr vus
livre complet
attente avis
avis valide
distribuer livres
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 109
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
organigramme
Diapositive n 110
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Diapositive n 111
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
diagramme tats-transitions
diagramme dactivits
Diapositive n 112
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
d AG but
r union licite [NON] A jour ? Payer ? [OUI] Payer cotisation rularisation g fin AG D le f inir bureau Comptabiliser les voix
[OUI]
fin r union
Voter
r union cltur e
Diapositive n 113
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
nouveau
Produit
normal
solder
en promotion
retir du catalogue
Diapositive n 114
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Ces diagrammes peuvent (doivent ?) tre complts, enrichis dune description des actions et des activits. La production dalgorithmes peut savrer ncessaire. Ceux-ci seront, de toute faon, rclams lors de la phase de conception.
Diapositive n 115
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
5) Conclusion
Un diagramme tats-transitions dcrit, pour une classe donne, les diffrents tats par lesquels elle passe, ainsi que les changements possibles. Il indique galement les actions ralises lorsque les objets sont dans un tat donne et/ou lors dune transition. Un diagramme dactivits dcrit, pour une classe et un tat donn, les actions ralises. Il sagit dun vritable organigramme (au sens donn ce terme dans les annes soixante !), dun algorithme. Par extension, ce second diagramme peut servir prsenter le comportement dune classe active, en mettant en vidence ses relations avec ses voisines.
Diapositive n 116
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
5) Conclusion
La phase danalyse sachve avec la production dun diagramme de classes complet, de lensemble des diagrammes dinteraction (squences et collaborations) et des quelques diagrammes tatstransitions et dactivits relatifs aux classes actives.
Elle peut tre complte par une tude (peu pousse) des interfaces, une vrification de la cohrence (indispensable !), des mesures (pour valuer la qualit des modles produits). Un prototype, bas que les diagrammes dinteraction, peut ventuellement achever ce travail.
Diapositive n 117
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Bibliographie (sommaire)
P. ANDRE, A. VAILLY, Spcifications des logiciels ; Deux exemples de pratiques rcentes : Z et UML , Editions Ellipses, juillet 2001, ISBN 2-7298-0774-8
la rfrence :-)
sont requis pour visionner compress) dcompresseur TIFF QuickTime et un (non cette image.
P-A. MULLER, N. GAERTNER, Modlisation objet avec UML , Editions EYROLLES, 2003, ISBN 2-212-11397-8
Diapositive n 118
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Webographie (sommaire)
Sil ny avait quun seul site Internet consulter rgulirement
QuickTime et u n dcompresseur TIFF (non compress) sont requis pour visio nner cette image.
http://conception.developpez.com/
Diapositive n 119
Universit de NANTES
Alain VAILLY
M.E.D.A.L.
Fin
Diapositive n 120
Universit de NANTES
Alain VAILLY