SlideShare une entreprise Scribd logo

Chap5 diagramme d'etats-transitions

A
A

Cours UML diagramme d'états transitions

Chap5 diagramme d'etats-transitions

1  sur  20
Télécharger pour lire hors ligne
Diagramme
d’Etats-Transitions
Conception Orientée Objet (UML) – Chapitre 5
Amir Souissi
©2019
1
Institut Supérieur des Etudes Technologiques (ISET-Tunisie)
Niveau: 2ème année Licence Appliquée
Spécialité : DSI, RSI
Mr Amir
Souissi
© 2019
Plan
1. Introduction
 Les objets et leurs états
2. Notations de base
 Etats
 Transitions
 Evènements
3. Notations Avancées
 Etat Composite
 Etat Historique
 Régions Concurrentes
2
Chapitre5
Diagrammed’Etats-Transitions
Plan
Mr Amir
Souissi
© 2019
1. Introduction
En UML, le diagramme d’états (state machine diagram) permet de modéliser
avec précision des comportements et les cycles de vie complexes d’un objet et
ce dès l’analyse.
Le diagramme d'états-transitions (ou simplement d’états) permet de décrire les
changements d'états d'un objet (ou d'un composant ou d’un système pris dans
son ensemble), en réponse à des évènements.
Certaines classes du modèle statique requièrent un diagramme d’états pour
comprendre son comportement dynamique complexe.
3
Chapitre5
Diagrammed’Etats-Transitions
1.Introduction
:Panier
 Quels sont les états qu’elle peut prendre au cours de sa vie?
 Quels sont les causes de son passage d’un état
à un autre?
 Comment cette entité statique se comporte?
Mr Amir
Souissi
© 2019
Exemple: Choixdel’objet
 Pour réaliser un diagramme d’état, il ne faut pas choisir un objet qui n’a pas d’états ou qui
ne change pas d’états.
 On choisit les objets qui ont un cycle de vie particulièrement riche.
 On prend par exemple l’objet « panier » pour étudier son cycle de vie.
4
Chapitre5
Diagrammed’Etats-Transitions
1.Introduction
Panier
- NumPanier
- DatePanier
- PrixTotal
- Réglement
- AjouterProduit(P)
- Annuler()
- Valider()
- Payer(montant)
Client
- NumCli
Produit
- NumProd
- QtéStock
Produit_Par_Panier
- QtéRemplie
1 Possède * * concerne *
Mr Amir
Souissi
© 2019
Exemple: Etatsàmodéliser
 L’objet qui nous intéresse c’est le panier.
5
Chapitre5
Diagrammed’Etats-Transitions
1.Introduction
Éléments déclencheurs de l’état États de l’objet
 Le panier peut être créé par un client inscrit Créé
 le panier devient susceptible à une opération d’achat probable En attente
 Lorsqu’il ajoute un produit ou retire un produit, le panier devient
modifié.
Modifié
 Lorsqu’il vide le panier, il devient vidé Vidé
 Lorsque le client parcourt les produits du panier, il est consulté Consulté
 Lorsque le client valide les produits du panier, il est validé Validé
 Lorsque le client procède au paiement en ligne, le panier est payé Payé
 Lorsqu’une facture est envoyée au client, il devient facturé. Facturé
 Lorsque le client annule le panier, alors celui-ci est détruit. Détruit
Mr Amir
Souissi
© 2019
2. Notationsde base
Etat
Un état représente une situation durant le vie d’un objet pendant laquelle :
 il exécute une certaine activité
 ou bien, il attend un certain événement.
Un objet passe par une succession d’états durant son existence.
Un état a une durée finie.
L’état initial est l’état dans lequel l’objet se trouve lors de sa création.
L’état final correspond à la destruction de l’objet.
Un diagramme d’états a toujours un et un seul état initial. Il peut n’avoir aucun
état final ou plusieurs.
Après sa création, un objet passe par une série d’états « normaux ».
6
Chapitre5
Diagrammed’Etats-Transitions
2.Notationsdebase
Etat intermédiaire
État initial État final

Recommandé

diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceLilia Sfaxi
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
diagramme de classe
diagramme de classediagramme de classe
diagramme de classeAmir Souissi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionLilia Sfaxi
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 

Contenu connexe

Tendances

Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisationNassim Amine
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Addi Ait-Mlouk
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionLilia Sfaxi
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrigeAmineMouhout1
 
Présentation PFE Module Article GPAO
Présentation PFE Module Article GPAOPrésentation PFE Module Article GPAO
Présentation PFE Module Article GPAOahmedmiha
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objetAmir Souissi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-SéquencesLilia Sfaxi
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop amat samiâ boualil
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriMansouri Khalifa
 
Le passage du diagramme de classe vers le model objet relationnel
Le passage du diagramme de classe vers le model objet relationnelLe passage du diagramme de classe vers le model objet relationnel
Le passage du diagramme de classe vers le model objet relationnelHassen Sic
 
UML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouriUML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouriMansouri Khalifa
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 

Tendances (20)

Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Cours uml
Cours umlCours uml
Cours uml
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
 
Présentation PFE Module Article GPAO
Présentation PFE Module Article GPAOPrésentation PFE Module Article GPAO
Présentation PFE Module Article GPAO
 
introduction à la modélisation objet
introduction à la modélisation objetintroduction à la modélisation objet
introduction à la modélisation objet
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
TD2-UML-Classes
TD2-UML-ClassesTD2-UML-Classes
TD2-UML-Classes
 
2 TUP
2 TUP2 TUP
2 TUP
 
Le passage du diagramme de classe vers le model objet relationnel
Le passage du diagramme de classe vers le model objet relationnelLe passage du diagramme de classe vers le model objet relationnel
Le passage du diagramme de classe vers le model objet relationnel
 
Modèle en cascade
Modèle en cascadeModèle en cascade
Modèle en cascade
 
UML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouriUML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouri
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 

Plus de Amir Souissi

Chapitre 6 traitement des exceptions
Chapitre 6  traitement des exceptionsChapitre 6  traitement des exceptions
Chapitre 6 traitement des exceptionsAmir Souissi
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfacesAmir Souissi
 
Chapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphismeChapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphismeAmir Souissi
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de javaAmir Souissi
 
Chapitre 4 persistance des donnees
Chapitre 4  persistance des donneesChapitre 4  persistance des donnees
Chapitre 4 persistance des donneesAmir Souissi
 
Chapitre 3 activites et intents
Chapitre 3   activites et  intentsChapitre 3   activites et  intents
Chapitre 3 activites et intentsAmir Souissi
 
Chapitre 2 classe et objet
Chapitre 2   classe et objetChapitre 2   classe et objet
Chapitre 2 classe et objetAmir Souissi
 
Chapitre 1 introduction generale
Chapitre 1   introduction generaleChapitre 1   introduction generale
Chapitre 1 introduction generaleAmir Souissi
 
Chapitre 2 elements graphiques android
Chapitre 2   elements graphiques androidChapitre 2   elements graphiques android
Chapitre 2 elements graphiques androidAmir Souissi
 
Chapitre 1 decouverte du developpement android
Chapitre 1  decouverte du developpement androidChapitre 1  decouverte du developpement android
Chapitre 1 decouverte du developpement androidAmir Souissi
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3Amir Souissi
 
Atelier symfony n 2
Atelier symfony n 2Atelier symfony n 2
Atelier symfony n 2Amir Souissi
 
Atelier symfony n 1
Atelier symfony n 1Atelier symfony n 1
Atelier symfony n 1Amir Souissi
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 

Plus de Amir Souissi (19)

Chapitre 6 traitement des exceptions
Chapitre 6  traitement des exceptionsChapitre 6  traitement des exceptions
Chapitre 6 traitement des exceptions
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfaces
 
Chapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphismeChapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphisme
 
Chapitre 3 elements de base de java
Chapitre 3  elements de base de javaChapitre 3  elements de base de java
Chapitre 3 elements de base de java
 
Chapitre 4 persistance des donnees
Chapitre 4  persistance des donneesChapitre 4  persistance des donnees
Chapitre 4 persistance des donnees
 
Chapitre 3 activites et intents
Chapitre 3   activites et  intentsChapitre 3   activites et  intents
Chapitre 3 activites et intents
 
Chapitre 2 classe et objet
Chapitre 2   classe et objetChapitre 2   classe et objet
Chapitre 2 classe et objet
 
Chapitre 1 introduction generale
Chapitre 1   introduction generaleChapitre 1   introduction generale
Chapitre 1 introduction generale
 
Chapitre 2 elements graphiques android
Chapitre 2   elements graphiques androidChapitre 2   elements graphiques android
Chapitre 2 elements graphiques android
 
Chapitre 1 decouverte du developpement android
Chapitre 1  decouverte du developpement androidChapitre 1  decouverte du developpement android
Chapitre 1 decouverte du developpement android
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3
 
Atelier symfony n 2
Atelier symfony n 2Atelier symfony n 2
Atelier symfony n 2
 
Atelier symfony n 1
Atelier symfony n 1Atelier symfony n 1
Atelier symfony n 1
 
Tp n 6 linux
Tp n 6 linuxTp n 6 linux
Tp n 6 linux
 
Tp n 5 linux
Tp n 5 linuxTp n 5 linux
Tp n 5 linux
 
Tp n 4 linux
Tp n 4 linuxTp n 4 linux
Tp n 4 linux
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Tp n 1 linux
Tp n 1 linuxTp n 1 linux
Tp n 1 linux
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 

Dernier

Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archivisteArchivesdeLyon
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfLallaJamilaFtaich1
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneayoubrhammadi2
 
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxsiemaillard
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMartin M Flynn
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueSKennel
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024frizzole
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024frizzole
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxMissionLocale
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxTouhemiSyrina
 

Dernier (12)

l'approche actionnelle.pptx
l'approche actionnelle.pptxl'approche actionnelle.pptx
l'approche actionnelle.pptx
 
Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archiviste
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdf
 
antigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderneantigone de jean Anouilh la tragédie moderne
antigone de jean Anouilh la tragédie moderne
 
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numérique
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptx
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptx
 
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
 

Chap5 diagramme d'etats-transitions

  • 1. Diagramme d’Etats-Transitions Conception Orientée Objet (UML) – Chapitre 5 Amir Souissi ©2019 1 Institut Supérieur des Etudes Technologiques (ISET-Tunisie) Niveau: 2ème année Licence Appliquée Spécialité : DSI, RSI
  • 2. Mr Amir Souissi © 2019 Plan 1. Introduction  Les objets et leurs états 2. Notations de base  Etats  Transitions  Evènements 3. Notations Avancées  Etat Composite  Etat Historique  Régions Concurrentes 2 Chapitre5 Diagrammed’Etats-Transitions Plan
  • 3. Mr Amir Souissi © 2019 1. Introduction En UML, le diagramme d’états (state machine diagram) permet de modéliser avec précision des comportements et les cycles de vie complexes d’un objet et ce dès l’analyse. Le diagramme d'états-transitions (ou simplement d’états) permet de décrire les changements d'états d'un objet (ou d'un composant ou d’un système pris dans son ensemble), en réponse à des évènements. Certaines classes du modèle statique requièrent un diagramme d’états pour comprendre son comportement dynamique complexe. 3 Chapitre5 Diagrammed’Etats-Transitions 1.Introduction :Panier  Quels sont les états qu’elle peut prendre au cours de sa vie?  Quels sont les causes de son passage d’un état à un autre?  Comment cette entité statique se comporte?
  • 4. Mr Amir Souissi © 2019 Exemple: Choixdel’objet  Pour réaliser un diagramme d’état, il ne faut pas choisir un objet qui n’a pas d’états ou qui ne change pas d’états.  On choisit les objets qui ont un cycle de vie particulièrement riche.  On prend par exemple l’objet « panier » pour étudier son cycle de vie. 4 Chapitre5 Diagrammed’Etats-Transitions 1.Introduction Panier - NumPanier - DatePanier - PrixTotal - Réglement - AjouterProduit(P) - Annuler() - Valider() - Payer(montant) Client - NumCli Produit - NumProd - QtéStock Produit_Par_Panier - QtéRemplie 1 Possède * * concerne *
  • 5. Mr Amir Souissi © 2019 Exemple: Etatsàmodéliser  L’objet qui nous intéresse c’est le panier. 5 Chapitre5 Diagrammed’Etats-Transitions 1.Introduction Éléments déclencheurs de l’état États de l’objet  Le panier peut être créé par un client inscrit Créé  le panier devient susceptible à une opération d’achat probable En attente  Lorsqu’il ajoute un produit ou retire un produit, le panier devient modifié. Modifié  Lorsqu’il vide le panier, il devient vidé Vidé  Lorsque le client parcourt les produits du panier, il est consulté Consulté  Lorsque le client valide les produits du panier, il est validé Validé  Lorsque le client procède au paiement en ligne, le panier est payé Payé  Lorsqu’une facture est envoyée au client, il devient facturé. Facturé  Lorsque le client annule le panier, alors celui-ci est détruit. Détruit
  • 6. Mr Amir Souissi © 2019 2. Notationsde base Etat Un état représente une situation durant le vie d’un objet pendant laquelle :  il exécute une certaine activité  ou bien, il attend un certain événement. Un objet passe par une succession d’états durant son existence. Un état a une durée finie. L’état initial est l’état dans lequel l’objet se trouve lors de sa création. L’état final correspond à la destruction de l’objet. Un diagramme d’états a toujours un et un seul état initial. Il peut n’avoir aucun état final ou plusieurs. Après sa création, un objet passe par une série d’états « normaux ». 6 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Etat intermédiaire État initial État final
  • 7. Mr Amir Souissi © 2019 Transition Une transition décrit la réponse d’un objet lorsqu’un événement se produit provoquant le passage de l’objet d’un état (état source) dans un autre (état cible) La transition est représentée par une flèche orientée de l’état source vers l’état cible. L'événement qui détermine le franchissement de la transition est indiqué sous forme de texte. Si aucun événement n'est spécifié, alors il s’agit d’une transition automatique. Une transition n’a pas de durée, elle est franchie instantanément (on dit qu’elle est déclenchée). 7 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Etat 1 Etat 2 Événement 1 Etat 3 Transition État cibleÉtat source Transition automatique
  • 8. Mr Amir Souissi © 2019 Exemple:Diagrammed’étatsdel’objet«Panier» 8 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase En Attente Modifié Ajouter Produit Supprimer Produit Vidé Consulté ValidéPayé Facturé Ajouter Produit Lister Produits Vider le panier Paiement en ligne Envoyer Facture
  • 9. Mr Amir Souissi © 2019 Evénement Un événement est un stimulus qui arrive à un moment précis et pouvant déclencher une transition entre états. La syntaxe de la structure de l’événement correspond aux détails de la transition :  La transition n’est qu’un événement qui s’est produit avec une condition (garde) vérifiée et déclenchant une action effectuée. 9 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Etat 1 Etat 2 Événement 1 Evénement Externe Avec changement d’état (Transition) Événement [garde] [/ action] événement : déclencheur ou trigger Garde : condition avec valeur logique (Vrai ou Faux) Action : atomique, in-interruptible
  • 10. Mr Amir Souissi © 2019 Exemples Ascenseur Compte Bancaire 10 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Arrêt En MarcheBouton_Appuyé (N°Etage) [poid < 200kg] / Bouger Atteindre_Eatge (N°Etage) [N°Etage = Etage] / S’arrêter Événement garde action Ouvert À découvert Premier versement Retrait (Somme) [solde –somme > 0] Retrait (Somme) [solde –somme < 0] Retrait (Somme) [solde –somme > 0]
  • 11. Mr Amir Souissi © 2019 Typesd’Evénements UML propose quatre sortes d’événements :  Événement signal: (signal event) Correspond à la réception d’un signal asynchrone émit par un autre objet ou par un acteur.  Événement appel d’opération : (call event) Appel d’une méthode de l’objet courant par un autre objet ou par un acteur. Il s’agit d’un message synchrone. nom_événement [(paramètre1 [type1] ; paramètre2[type2]; ….)]  Événement de changement : (change event) se produit lorsqu’une condition passe de faux à vrai. (modélisé par le mot clé when suivi d’une expression booléenne) when ( expression booléenne)  Événement temporel : (time event) causé par l’expiration d’une temporisation. (modélisé par le mot clé after suivi d’un expression représentant une durée) when ( date = « expression date précise ») after (« expression d’une durée ») 11 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase
  • 12. Mr Amir Souissi © 2019 Exemples 12 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Lampe avec minuterie Produit en stock Eteinte AlluméeBouton_Appuyé () / secondes ++ After (30 s) Disponible Indisponible When (0 < qté < 10) Critique Achat ()[qté>10] / qté ++ Achat () / qté ++ When ( qté = 0)
  • 13. Mr Amir Souissi © 2019 EvénementInterne  On peut avoir des états qui effectuent plusieurs activités successivement ou en parallèle.  L’enchainement de ces activités à l’intérieur d’un même état peut être spécifié grâce aux événements internes qui ont la même syntaxe que les événements externes.  Les événements internes s’écrivent à l’intérieur de l’état, séparé du nom de l’état par un trait.  UML définit des mots clé correspondant à des événements internes particuliers :  Entry / activité entrée : événement à l’entrée dans l’état.  Do / activité : définit l’activité à exécuter dès que celle définie par entry est terminée.  On event / activité : (optionnel) définit l’activité à exécuter à chaque fois que nous avons un évènement particulier.  Exit / activité sortie : événement à la sortie de l’état. 13 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Etat Evénement [condition] / action Evénement Interne Sans changement d’état
  • 14. Mr Amir Souissi © 2019 Exemples 14 Chapitre5 Diagrammed’Etats-Transitions 2.Notationsdebase Etats d’un ascenseur arrêté à l’étage Etats d’un produit disponible en stock Arrêt Entry / ouvrir_portes Entry / armer_horloge (20 sec) Do / attendre On délai_passé / fermer_portes Exit / RàZ_horloge (0 sec) Déplacement Appel (N°Etage) [Etage != N°Etage] Appel (N°Etage) [Etage = N°Etage] Disponible Entry / Vérifier_qté Do / MAJ_qté On Erreur (qté) / afficher (Erreur) Exit / afficher (qté_en_stock) Indisponible When (qté = 0) Achat (qté) / qté ++
  • 15. Mr Amir Souissi © 2019 3. NotationsAvancées Etat Composite Un état composite est un état décomposable en sous états. Les sous-états sont des états composites ou élémentaires. Correspond à une hiérarchisation (généralisation) d’un ensemble d’états. Facilite la représentation lorsque le nombre de connexion à un état devient élevé 15 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées A C B E1 E2 E2 A B E1 C E2 A B E1 E2 E3 A C D B E3 E2 E1 E
  • 16. Mr Amir Souissi © 2019 Exemple 16 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées Mort Vivant Mariable Marié Naissance Décès conjoint Mariage [âge atteint] Célibataire Veuf Divorcé Divorce décès Mort décès Mariable Marié Naissance Mariage [âge atteint] Décès conjoint Divorce décès Etat Composite Etat Composite
  • 17. Mr Amir Souissi © 2019 Etat Historique L’état historique permet de mémoriser le dernier sous-état actif d’un état composite. Représenté par un cercle contenant H. La transition qui cible l’état Historique a pour cible le dernier état visité de l’état composite. 17 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées Etat Composite Sous état 1 Sous état 2 Etat E1 E2 H E3Etat Historique
  • 18. Mr Amir Souissi © 2019 Exemple 18 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées Nettoyage Lavage rinçage Attente Démarrer After (4 min) Arrêt d’urgence After (2 min) H Reprise Arrêt d’urgence soit après un lavage soit après un rinçage Etat Historique : Le dernier état qui était actif est ciblé par la transition « Reprise »
  • 19. Mr Amir Souissi © 2019 RégionsConcurrentesd’unEtat Dans certains cas, plusieurs états peuvent être actifs simultanément. Représentés par des régions parallèles ou concurrentes. Chaque région doit être initialisée. L’état composite global est actif lorsque une ou plusieurs de ses régions est active. 19 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées Régions concurrentes Etat Composite E1 E2 E3 Sous état initial
  • 20. Mr Amir Souissi © 2019 Exemple Distributeur automatique de boissons On prépare la boisson et on rend la monnaie en même temps. Représentation équivalente : 20 Chapitre5 Diagrammed’Etats-Transitions 3.NotationsAvancées Préparation et Rendu monnaie Préparation Boisson Gobelet en attente Rendu monnaie Préparation et Rendu monnaie Préparation Boisson Gobelet en attente Rendu monnaie

Notes de l'éditeur

  1. Dès que le panier est créé, il passe par transition automatique en état initialisé. « Initialisé » est un état dans lequel le panier est identifié par un numéro unique et estampillé par une date de création à la seconde prés. Au login de l’utilisateur, le panier change d’état et devient authentifié, c.-à-d. que l’identifiant de l’utilisateur est affecté à ce panier. Si l’utilisateur se déconnecte, alors le panier redevient initialisé, c.-à-d. que le panier perd l’identifiant de l’utilisateur.