1. Workflow Foundation 4.5 avec Visual Studio 2012
Module 3 : Diagrammes de Flux et Diagrammes de
Machines d’Etat
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 1
2. Section 1 : Hébergement
et Interactions avec
l’extérieur
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
2
3. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 1 : HÉBERGEMENT ET INTERACTIONS AVEC L’EXTÉRIEUR
Hébergement des workflows dans des
applications
Une façon simple d’exécuter les workflows est d’utiliser la classe « WorkflowInvoker »
« WorkflowInvoker » est limité car il ne permet pas l’intéraction avec le moteur
« WorkflowApplication » est utilisée pour créer et pour héberger des workflows
« WorkflowApplication » permet la gestion des évènements du cycle de vie
« WorkflowApplication » permet de gérer les signets
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 3
4. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 1 : HÉBERGEMENT ET INTERACTIONS AVEC L’EXTÉRIEUR
Les signets (Bookmarks)
Les signets sont créés pour suspendre un workflow et attendre un évènement provenant de
l’extérieur
Pour créer un signet, il faut créer une activité descendant de « NativeActivity » au lieu de
« CodeActivity »
Un signet est caractérisé par un nom et un callback (optionnel)
Le nom permet de distinguer les workflows (un workflow peut avoir plusieurs signets)
Le callback est appelé lorsque l’environnement externe déclenche le signet
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 4
5. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 1 : HÉBERGEMENT ET INTERACTIONS AVEC L’EXTÉRIEUR
L’activité « Pick »
L’activité « Pick » attend des évènements à partir du monde externe
« Pick » est constituée de plusieurs branches où chaque branche attend un évènement
particulier
La zone déclencheur « Trigger » correspond à l’évènement à attendre
La zone action « Action » correspond aux activités à exécuter lorsque l’évènement a lieu
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 5
6. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 1 : HÉBERGEMENT ET INTERACTIONS AVEC L’EXTÉRIEUR
L’activité « Pick » - Suite
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 6
7. Section 2 : Les
Organigrammes
(diagrammes de flux)
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
7
8. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Introduction aux organigrammes
Un moyen naturel de modéliser des processus métier
Basé sur le modèle des organigramme qui leur ajoute une exécutabilité
Contrairement aux workflows séquentiels qui sont modélisés de haut en bas, les
organigrammes peuvent avoir plusieurs chemins
Pour donner lieu à des diagrammes complexes, les organigrammes peuvent être imbriqués
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 8
9. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
L’activité « Organigramme »
Permet de conserver le même type de workflow (Activity) et de s’intégrer d’une manière très
flexible avec les workflows séquentiels
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 9
10. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Les connecteurs
Les connecteurs sont des transitions permettant de passer d’une étape de l’organigramme vers
l’autre
Le designer ajoute des flexibilités permettant d’ajouter manuellement ou automatiquement
des connecteurs
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 10
11. Imbrication d’organigrammes
MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Pour certains cas complexes, des organigrammes peuvent être imbriqués à l’intérieur d’autres
organigrammes
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 11
12. L’activité de flux conditionnelle
MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Selon la condition, offre deux chemins possibles : un lorsque la condition est vérifiée et l’autre
le contraire
« TrueLabel » et « FalseLabel » permettent de donner des libellés aux deux connecteurs
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 12
13. L’activité multi-décisionnelle (Switch)
MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Plusieurs branchements possibles selon la condition
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 13
14. Tutoriel 3.1 : Organigramme de gestion
d’appel d’offre
MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 2: LES ORGANIGRAMMES (DIAGRAMMES DE FLUX)
Simulation d’un appel d’offre
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 14
15. Section 3 : Diagrammes
de Machine d’état
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
15
16. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Introduction aux machines d’état
La machine d’état modélise une entité du monde réel qui a un cycle de vie composé de
plusieurs états
Les ME ont été supprimés de la version 4.0 puis réintroduits suite à la demande des
développeurs
Comme les organigrammes, les diagrammes de ME s’intègrent avec les workflows classique
grâce à l’activité « Machine d’état »
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 16
17. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
L’activité « Machine d’état »
Permet de transformer un workflow en machine d’état
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 17
18. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
L’état (State)
Représente une étape dans laquelle est le workflow
La zone « Entry » se déclenche lorsque la ME entre dans l’état
La zone « Exit » se déclenche lorsque la ME sort de cet état
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 18
19. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Les états finaux (FinalState)
Un état ultime de la machine d’état
Une ME peut avoir plusieurs états finaux
L’état final n’a que la zone d’entrée (pas la zone de sortie)
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 19
20. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Les transitions
Des connecteurs qui permettent de passer d’un état à l’autre
Une transition comporte une zone déclencheur « Trigger » qui attend un évènement externe
(entée utilisateur,service,…)
Une transaction peut avoir une condition qui doit être satisfaite pour exécuter la transition
Une transition a un libellé qui permet de la distinguer
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 20
21. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Les transitions - Suite
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 21
22. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Les transitions - Suite
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 22
23. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Les transitions partagées
Plusieurs transitions peuvent partager le même déclencheur mais conduisent vers des états
différents, on parle alors de transitions partagées
Les transitions partagées doivent être distinguées par des
conditions différentes
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 23
24. MODULE 3 - DIAGRAMMES DE FLUX ET DIAGRAMMES DE MACHINES D’ETAT
SECTION 3 :DIAGRAMMES DE MACHINE D’ÉTAT
Tutoriel 3.2 : Simulation d’une opération
de recrutement
WORKFLOW FOUNDATION 4.5 | MOSTEFAI MOHAMMED AMINE | JUIN 2013 24