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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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

Wf module3

  • 1.
    Workflow Foundation 4.5avec 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 MODULE3 - 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 fluxconditionnelle 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