SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
MOO (UML)
Chapitre 5 :
Diagrammes d’activités
Enseignant responsable : Achraf
Mtibaa
Introduction
 Un diagramme d’activités (DA) représente le flot d’une
activité à l’autre.
 Les activités :
 sont des opérations non atomiques.
 Elles finissent par exécuter une action composée de
calculs atomiques qui aboutissent à un changement de
l’état du système ou au retour d’une valeur.
2
Introduction
 Le DA est une variante du DET :
 Les DA utilisent beaucoup d’éléments du DET.
 Dans le DET, les états et les transitions sont mis en avant
alors que dans le DA se sont les activités et les
transitions qui sont mises en avant.
Un DA correspond à un diagramme d’états vu sous
forme « procédurale » avec une mise en évidence des
actions/activités (d’où son nom).
3
Introduction
 Un diagramme d’activités peut être rattaché à un CU, à
la réalisation d’une opération, ou à un processus
impliquant l’utilisation d’un ou de plusieurs objets.
 En théorie, tous les mécanismes dynamiques pourraient
être décrits par un diagramme d'activités, mais seuls les
mécanismes complexes ou intéressants méritent d'être
représentés (faisant intervenir plusieurs objets, créant ou
modifiant divers objets, …).
Une activité : plusieurs opérations
DA : représente l’enchaînement des différentes
opérations
La fin d’une opération engendre le début d’une autre
4
Les états d’action (et d’activités)
Un état d’action modélise une étape dans l’exécution d’un
algorithme ou d’un flot.
C’est un état simplifié dans lequel figure une action d’entrée
et duquel part au moins une transition automatique vers un
autre état, déclenchée par la fin de l’action.
Etudier devis Index = recherche(e)+7
Exemples d’états
d’action
5
Les transitions
 Une transition peut être automatique ou gardée.
 Une transition automatique est :
 franchie quand l’activité précédente est finie.
 Une transition gardée est franchie :
 quand l’activité précédente est finie et
 si la condition est vérifiée.
Activité
Autre Activité
Transitions
automatiques 6
Les transitions
Demande
dossier
Recevoir
dossier
Compléter
dossier
Enregistrer
Transitions
automatiques 7
Les transitions
[rejetée] [retenue]
Transitions gardées
Afficher(i)
/i=0
[i<10]/ i=i+1
[sinon]
Examen candidature
Rédiger lettre
de refus
Envoyer
convocation
Le niveau d’abstraction d’un DA peut être : de haut niveau (I) ou de bas
niveau (II) : algorithmique
(I) (II)
8
Synchronisation
 Il est possible de synchroniser les transitions à l'aide de barres
de synchronisation (BS)
 Une BS permet d'ouvrir et/ou de fermer des branches
parallèles au sein d'un flot d'exécution.
 Les transitions qui partent d'une BS ont lieu en même temps.
Activité 2
Activité 1
Activité 3
La fin de A1 engendre les
débuts simultanés de A2
et A3
9
Synchronisation
 On ne franchit une barre de synchronisation qu'après
réalisation de toutes les transitions qui s'y rattachent.
 Exemples :
Activité 2
Activité 1
Activité 3
Vérifier Dossier
Vérifier situation
assuré
Etudier dossier Préparer
facture
Enregistrer
commande
Préparer bon
de livraison
Le début de A3 ne se fait que si
A2 et A1 soient terminées
10
Les travées
 Les diagrammes d’activités peuvent être découpés en travées
(ou couloirs d’activité) pour montrer les responsabilités au
sein d’un mécanisme ou d’une organisation.
 Chaque activité appartient à une seule travée même si les
transitions peuvent passer d’une travée à l’autre.
 Les travées permettent d'organiser un diagramme d'activités
 Exemple
11
Cloturer
commande
Commander produit
Recevoir commande
Payer Facture
Traiter commande
Facturer client
Sortir articles
Expedier commande
Magasinier
Vendeur
Client
couloirs d’activité
12
Flot d’objets
 Il est possible de faire apparaître les objets dans un DA.
 Les objets représentés sont ceux qui:
 initient les actions,
 utilisés par les actions ou
 modifiés par les actions
 Un objet utilisé par une action est visualisé par une flèche en
pointillés pointant vers l’état d’action.
 Un objet modifié par une action est visualisé par une flèche en
pointillés orientée de l’état d’action vers l’objet.
 Il est possible de montrer l’état d’un objet et les valeurs de ses
attributs modifiés.
13
Commander produit
Payer Facture
Traiter commande
Sortir articles
Expédier commande
Magasinier
Vendeur
Client
Recevoir commande Facturer client
Cloturer
commande
c:COMMANDE
[en cours]
c:COMMANDE
[traitée]
f:FACTURE
[due]
f:FACTURE
[payée]
Remarque: DA = DCU + D. Classes + D. Objets + D. Collaboration + D. ET
14
Les DA pour la modélisation des processus métier
 Un processus métier (business process) est l’ensemble des
activités internes d’un métier dont l’objectif est de fournir un
résultat observable et mesurable pour un utilisateur
individuel du métier.
Exemples : Gérer commandes, Gérer retours, …
 La modélisation des processus métier fournit le contexte dans
lequel les fonctionnalités des systèmes d’information
(informatisés) seront définies et leur opportunité mesurée.
 Les DA permettent de « formaliser » les processus métier.
 Les travées permettent de diviser les états d’action (ou
d’activités) en groupes sur le DA, chaque groupe représentant
le département responsable de ces activités.
 Exemple :
15
Demander retour
Attribuer num
retour
Recevoir article
Expedier article
Magasinier
Service Ventes
Client
Restocker article
Créditer
compte
a:ARTICLE
[retourné]
a: ARTICLE
[disponible]
Comptabilité
Processus métier : Gérer les retours 16
Les DA pour la modélisation des opérations
 L’élément le plus courant auquel on peut attacher un DA est
l’opération.
 Dans ce contexte, le DA est un organigramme des actions d’une
opération.
 Le principal avantage d’un DA dans ce cas est que les éléments
qu’il contient sont sémantiquement liés à un modèle sous-jacent
riche.
17
Les DA pour la modélisation des
opérations
 Pour modéliser une opération, il faut
 Rassembler les abstractions impliquées dans cette opération
(paramètres, attributs de la classe d’appartenance de
l’opération, et certaines classes voisines.
 Identifier les préconditions à l’état initial de l’opération et les
postconditions à son état final, ainsi que les invariants qui
doivent se maintenir pendant l’exécution de l’opération.
 en commençant par l’état initial, spécifier les activités et les
actions.
Lorsque cela est nécessaire, utiliser les branchements
conditionnels pour les chemins conditionnels et les itérations.
Si l’opération appartient à une classe qui peut en activer
d’autres, utiliser la synchronisation. 18
x= (l.delta-delta)/(pente-l.pente)
y=(pente*x)+delta
Retourner Point(x, y)
Retourner Point(0,0)
[pente=l.pente]
[sinon]
Les DA pour la modélisation
des opérations
19
DET versus DA
DET D A
Représente l’évolution des
objets
Représente l’évolution de
l’exécution d’une opération
(CU)
Etat (objet) Etat(activité/opération)
Etats : initial / Final Etats : initial / Final
Transition (gardée /
automatique)
Transition (gardée /
automatique)
BS BS
20

Contenu connexe

Similaire à Chapitre 5. Diagramme des activités.pdf

Chapitre_7_Génie logiciel et UML (1).pdf
Chapitre_7_Génie logiciel et UML (1).pdfChapitre_7_Génie logiciel et UML (1).pdf
Chapitre_7_Génie logiciel et UML (1).pdfZakariaTouyeb
 
programmation orienté objet c++
programmation orienté objet c++programmation orienté objet c++
programmation orienté objet c++coursuniv
 
Chapitre_11-_React-Redux.pdf
Chapitre_11-_React-Redux.pdfChapitre_11-_React-Redux.pdf
Chapitre_11-_React-Redux.pdfHassanHachicha2
 
Chap7 developpement modele statique
Chap7 developpement modele statiqueChap7 developpement modele statique
Chap7 developpement modele statiquevangogue
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagramsChebil Hanen
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1Sem Koto
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1Sem Koto
 
TOC For Organizational Management - FR
 TOC For Organizational Management - FR TOC For Organizational Management - FR
TOC For Organizational Management - FRSeuils Labs
 
Chapitre4_ConceptionDynamique (1).pptx
Chapitre4_ConceptionDynamique (1).pptxChapitre4_ConceptionDynamique (1).pptx
Chapitre4_ConceptionDynamique (1).pptxfatmaezzahranouioui
 
Activity
ActivityActivity
Activitydido
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceLilia Sfaxi
 
Transformations ponctuelles.ppt
Transformations ponctuelles.pptTransformations ponctuelles.ppt
Transformations ponctuelles.pptFerielSayah1
 
UML Part 6 diagramme etat transition mansouri
UML Part 6 diagramme etat transition mansouriUML Part 6 diagramme etat transition mansouri
UML Part 6 diagramme etat transition mansouriMansouri Khalifa
 

Similaire à Chapitre 5. Diagramme des activités.pdf (20)

Chapitre_7_Génie logiciel et UML (1).pdf
Chapitre_7_Génie logiciel et UML (1).pdfChapitre_7_Génie logiciel et UML (1).pdf
Chapitre_7_Génie logiciel et UML (1).pdf
 
programmation orienté objet c++
programmation orienté objet c++programmation orienté objet c++
programmation orienté objet c++
 
Chapitre_11-_React-Redux.pdf
Chapitre_11-_React-Redux.pdfChapitre_11-_React-Redux.pdf
Chapitre_11-_React-Redux.pdf
 
Le grafcet
Le grafcetLe grafcet
Le grafcet
 
Sécurité des bd
Sécurité des bd Sécurité des bd
Sécurité des bd
 
Chap7 developpement modele statique
Chap7 developpement modele statiqueChap7 developpement modele statique
Chap7 developpement modele statique
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagrams
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1
 
React redux-tutoriel-1
React redux-tutoriel-1React redux-tutoriel-1
React redux-tutoriel-1
 
Chap_5-MCT.pdf
Chap_5-MCT.pdfChap_5-MCT.pdf
Chap_5-MCT.pdf
 
TOC For Organizational Management - FR
 TOC For Organizational Management - FR TOC For Organizational Management - FR
TOC For Organizational Management - FR
 
Présentation grafcet
Présentation grafcetPrésentation grafcet
Présentation grafcet
 
Chapitre4_ConceptionDynamique (1).pptx
Chapitre4_ConceptionDynamique (1).pptxChapitre4_ConceptionDynamique (1).pptx
Chapitre4_ConceptionDynamique (1).pptx
 
Grafcet.pdf
Grafcet.pdfGrafcet.pdf
Grafcet.pdf
 
Activity
ActivityActivity
Activity
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Chapitre 4 grafcet
Chapitre 4 grafcetChapitre 4 grafcet
Chapitre 4 grafcet
 
Transformations ponctuelles.ppt
Transformations ponctuelles.pptTransformations ponctuelles.ppt
Transformations ponctuelles.ppt
 
UML Part 6 diagramme etat transition mansouri
UML Part 6 diagramme etat transition mansouriUML Part 6 diagramme etat transition mansouri
UML Part 6 diagramme etat transition mansouri
 
Ligthning Component
Ligthning ComponentLigthning Component
Ligthning Component
 

Chapitre 5. Diagramme des activités.pdf

  • 1. MOO (UML) Chapitre 5 : Diagrammes d’activités Enseignant responsable : Achraf Mtibaa
  • 2. Introduction  Un diagramme d’activités (DA) représente le flot d’une activité à l’autre.  Les activités :  sont des opérations non atomiques.  Elles finissent par exécuter une action composée de calculs atomiques qui aboutissent à un changement de l’état du système ou au retour d’une valeur. 2
  • 3. Introduction  Le DA est une variante du DET :  Les DA utilisent beaucoup d’éléments du DET.  Dans le DET, les états et les transitions sont mis en avant alors que dans le DA se sont les activités et les transitions qui sont mises en avant. Un DA correspond à un diagramme d’états vu sous forme « procédurale » avec une mise en évidence des actions/activités (d’où son nom). 3
  • 4. Introduction  Un diagramme d’activités peut être rattaché à un CU, à la réalisation d’une opération, ou à un processus impliquant l’utilisation d’un ou de plusieurs objets.  En théorie, tous les mécanismes dynamiques pourraient être décrits par un diagramme d'activités, mais seuls les mécanismes complexes ou intéressants méritent d'être représentés (faisant intervenir plusieurs objets, créant ou modifiant divers objets, …). Une activité : plusieurs opérations DA : représente l’enchaînement des différentes opérations La fin d’une opération engendre le début d’une autre 4
  • 5. Les états d’action (et d’activités) Un état d’action modélise une étape dans l’exécution d’un algorithme ou d’un flot. C’est un état simplifié dans lequel figure une action d’entrée et duquel part au moins une transition automatique vers un autre état, déclenchée par la fin de l’action. Etudier devis Index = recherche(e)+7 Exemples d’états d’action 5
  • 6. Les transitions  Une transition peut être automatique ou gardée.  Une transition automatique est :  franchie quand l’activité précédente est finie.  Une transition gardée est franchie :  quand l’activité précédente est finie et  si la condition est vérifiée. Activité Autre Activité Transitions automatiques 6
  • 8. Les transitions [rejetée] [retenue] Transitions gardées Afficher(i) /i=0 [i<10]/ i=i+1 [sinon] Examen candidature Rédiger lettre de refus Envoyer convocation Le niveau d’abstraction d’un DA peut être : de haut niveau (I) ou de bas niveau (II) : algorithmique (I) (II) 8
  • 9. Synchronisation  Il est possible de synchroniser les transitions à l'aide de barres de synchronisation (BS)  Une BS permet d'ouvrir et/ou de fermer des branches parallèles au sein d'un flot d'exécution.  Les transitions qui partent d'une BS ont lieu en même temps. Activité 2 Activité 1 Activité 3 La fin de A1 engendre les débuts simultanés de A2 et A3 9
  • 10. Synchronisation  On ne franchit une barre de synchronisation qu'après réalisation de toutes les transitions qui s'y rattachent.  Exemples : Activité 2 Activité 1 Activité 3 Vérifier Dossier Vérifier situation assuré Etudier dossier Préparer facture Enregistrer commande Préparer bon de livraison Le début de A3 ne se fait que si A2 et A1 soient terminées 10
  • 11. Les travées  Les diagrammes d’activités peuvent être découpés en travées (ou couloirs d’activité) pour montrer les responsabilités au sein d’un mécanisme ou d’une organisation.  Chaque activité appartient à une seule travée même si les transitions peuvent passer d’une travée à l’autre.  Les travées permettent d'organiser un diagramme d'activités  Exemple 11
  • 12. Cloturer commande Commander produit Recevoir commande Payer Facture Traiter commande Facturer client Sortir articles Expedier commande Magasinier Vendeur Client couloirs d’activité 12
  • 13. Flot d’objets  Il est possible de faire apparaître les objets dans un DA.  Les objets représentés sont ceux qui:  initient les actions,  utilisés par les actions ou  modifiés par les actions  Un objet utilisé par une action est visualisé par une flèche en pointillés pointant vers l’état d’action.  Un objet modifié par une action est visualisé par une flèche en pointillés orientée de l’état d’action vers l’objet.  Il est possible de montrer l’état d’un objet et les valeurs de ses attributs modifiés. 13
  • 14. Commander produit Payer Facture Traiter commande Sortir articles Expédier commande Magasinier Vendeur Client Recevoir commande Facturer client Cloturer commande c:COMMANDE [en cours] c:COMMANDE [traitée] f:FACTURE [due] f:FACTURE [payée] Remarque: DA = DCU + D. Classes + D. Objets + D. Collaboration + D. ET 14
  • 15. Les DA pour la modélisation des processus métier  Un processus métier (business process) est l’ensemble des activités internes d’un métier dont l’objectif est de fournir un résultat observable et mesurable pour un utilisateur individuel du métier. Exemples : Gérer commandes, Gérer retours, …  La modélisation des processus métier fournit le contexte dans lequel les fonctionnalités des systèmes d’information (informatisés) seront définies et leur opportunité mesurée.  Les DA permettent de « formaliser » les processus métier.  Les travées permettent de diviser les états d’action (ou d’activités) en groupes sur le DA, chaque groupe représentant le département responsable de ces activités.  Exemple : 15
  • 16. Demander retour Attribuer num retour Recevoir article Expedier article Magasinier Service Ventes Client Restocker article Créditer compte a:ARTICLE [retourné] a: ARTICLE [disponible] Comptabilité Processus métier : Gérer les retours 16
  • 17. Les DA pour la modélisation des opérations  L’élément le plus courant auquel on peut attacher un DA est l’opération.  Dans ce contexte, le DA est un organigramme des actions d’une opération.  Le principal avantage d’un DA dans ce cas est que les éléments qu’il contient sont sémantiquement liés à un modèle sous-jacent riche. 17
  • 18. Les DA pour la modélisation des opérations  Pour modéliser une opération, il faut  Rassembler les abstractions impliquées dans cette opération (paramètres, attributs de la classe d’appartenance de l’opération, et certaines classes voisines.  Identifier les préconditions à l’état initial de l’opération et les postconditions à son état final, ainsi que les invariants qui doivent se maintenir pendant l’exécution de l’opération.  en commençant par l’état initial, spécifier les activités et les actions. Lorsque cela est nécessaire, utiliser les branchements conditionnels pour les chemins conditionnels et les itérations. Si l’opération appartient à une classe qui peut en activer d’autres, utiliser la synchronisation. 18
  • 19. x= (l.delta-delta)/(pente-l.pente) y=(pente*x)+delta Retourner Point(x, y) Retourner Point(0,0) [pente=l.pente] [sinon] Les DA pour la modélisation des opérations 19
  • 20. DET versus DA DET D A Représente l’évolution des objets Représente l’évolution de l’exécution d’une opération (CU) Etat (objet) Etat(activité/opération) Etats : initial / Final Etats : initial / Final Transition (gardée / automatique) Transition (gardée / automatique) BS BS 20