Diagramme d'état transition et Diagramme d'activité
1 Diagramme d’état transition. 1
3 Il existe quatre types d’événements : 1
8 Transition et flot de contrôle. 4
Refrences
https://www.labri.fr/perso/johnen/pdf/IUT-Bordeaux/UMLCours/diagramme-etat-transition.pdf.
Joseph Gabay :UML 2 ANALYSE ET CONCEPTION
Mise en œuvre guidée avec études de cas
1 Diagramme d’état transition
Décrire le comportement dynamique d'une entité (logiciel, composant, objet...)
2 Etat
Un état d’un objet est une situation stable dans la vie de l’objet où il effectue une activité ou il
attend un événement.
Un état est caractérisé par :
les valeurs des rubriques de l’objet
l’existence des associations/liens de cet objet aux autres objets.
3 Il existe quatre types d’événements :
Types d'événements :
● Signal : réception d'un message asynchrone
● Appel d'une opération (synchrone) : liée aux cas d'utilisation, opération du diagramme de classes...
● Satisfaction d'une condition booléenne : when(cond), évaluée continuellement jusqu'à ce qu'elle soit vraie
● Temps
- Date relative : when(date = date)
- Date absolue : after(durée)
4 Action et activité
Une action est une opération instantanée qui ne peut être interrompue ; elle est associée à une transition.
Une activité est une opération d’une certaine durée qui peut être interrompue, elle est associée à un état d’un objet.
5 Transition/Evénement
Une transition est le passage d’un état à un autre état. Une
transition est représentée par une flèche de l’état d’origine au nouvel état.
Une transition est étiquetée par l’événement qui provoque le changement d’état.
Un objet de la
classe « DVD » a les états suivants : disponible, emprunté, non rendu.
1.a Définition ou caractérisation des états
L’état « disponible » est défini par : date_emprunt a pour valeur NULL (non défini) et l’objet
n’a pas d’association/lien de type « Emprunt ».
L’état « emprunté » est défini par date_emprunt < date_jour - delaiMaxEmprunt et l’objet a une association de type « Emprunt ».
L’état « non rendu» est défini par date_emprunt > =date_jour - delaiMaxEmprunt et l’objet a une association de type « Emprunt ».
Dans certain cas, les états des objets d’une classe ne peuvent pas être caractérisés par les valeurs des rubriques de l’objet ou l’existence des associations de cet objet aux autres objets. Dans ce cas-là, la classe a une rubrique supplémentaire « etat_classe » dont la valeur sera l’état de l’objet
Si un objet passe par plusieurs états, on dit que l’objet a un cycle de vie. Tous les objets d’une
même classe ont des cycles de vie qui ont la même structure. Cette structure est définie par le
diagramme d’états associé à la classe.
6 Le diagramme d’activité
7 Exemple
Traiter commande
Les concepts communs ou très proches entre le diagramme d’activité et le diagramme d’état-transition sont :
Les concepts communs ou très proches entre le diagramme d’activité et le diagramme d’état-transition sont : . transition, • nœud initial (état initial), • nœud final (état final), • ⊗ nœud de fin flot (état de sortie), • ◊ nœud de décision (choix).
|
Les concepts spécifiques au diagramme d’activité sont : • nœud de bifurcation, • nœud de jonction, • nœud de fusion, • pin d’entrée et de sortie, • flot d’objet, • partition. |
8 Transition et flot de contrôle
Dès qu’une action est achevée, une transition automatique est déclenchée vers l’action suivante. Il n’y a donc pas d’événement associé à la transition. L’enchaînement des actions constitue le flot de contrôle.
Nœud de bifurcation (fourche)
Un nœud de bifurcation (fourche) permet à partir d’un flot unique entrant de créer plusieurs flots concurrents en sortie de la barre de synchronisation.
Nœud de jonction (synchronisation)
Un nœud de jonction (synchronisation) permet, à partir de plusieurs flots concurrents en entrée de la synchronisation, de produire un flot unique sortant. Le nœud de jonction est le symétrique du nœud de bifurcation.
Nœud de test-décision Un nœud de test-décision permet de faire un choix entre plusieurs flots sortants en fonction des conditions de garde de chaque flot.
Nœud de fusion-test
Un nœud de fusion-test permet d’avoir plusieurs flots entrants possibles et un seul flot sortant. Le flot sortant est donc exécuté dès qu’un des flots entrants est activé.