Les processus métiers : Chapitre 2 :
concepts, modèles et systèmes Concepts et notations
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Relations entre les concepts de
base
Concepts de base
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Processus métier Processus et Workflow
Un processus métier est un ensemble de Monde réel Ordinateur
procédures et d'activités plus ou moins liées qui
réalisent collectivement un objectif métier, en
général au sein d'une structure organisationnelle Modèle de processus Modèle de Workflow
définissant des rôles et des relations
fonctionnelles. Un processus métier peut être
entièrement inclus dans une organisation simple
ou peut s'étendre sur plusieurs organisations. Un
processus métier peut combiner des activités Processus Workflow
automatiques et des activités manuelles (WfMC).
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Workflow Workflow
On appelle « workflow » l’automatisation On appelle « workflow » les aspects
complète ou partielle des processus opérationnels d’un processus : la
durant lesquels des informations sont séquence des tâches et qui les réalisent,
passées et des tâches sont affectées par le flot de données qui supporte ces
un participant à un autre, en accord avec tâches, et les mécanismes qui permettent
des procédures [WFMC]. de mesurer, suivre et contrôler ces tâches.
– Assure que le bon travail est fait au bon [Mohan1999] Workflow Management in the Internet Age, C. Mohan
moment par la bonne personne et dans le bon (IBM Almaden Research Center
ordre.
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Système de gestion de workflow
Définition (modèle) de processus
(ou de processus)
Représentation d'un processus métier dans une
Un système qui définit, crée et gère forme qui supporte des manipulations
l'exécution de workflows par l'utilisation de automatiques comme la modélisation ou
logiciel capable d'interpréter les définitions l'exécution par un système de gestion de
workflow. Une telle définition consiste en un
de processus, d'interagir avec les réseau d'activités, en des critères pour indiquer
participants et, lorsque cela est requis, le démarrage et la terminaison du processus,
d'invoquer les outils et les applications ainsi que des information sur les activités
comme les participants, les applications et les
(WfMC) données permettant la mise en œuvre des
processus
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Exemple de modèle de processus : Méta-modèle de description processus
l’organisation d’un voyage
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Instance de processus Activité
Cas d'une exécution d'un modèle de Une activité est une description d'un bout du
processus, incluant les données travail qui constitue une étape logique à
associées. Chaque instance représente l'intérieur d'un processus. Elle peut être
une exécution du processus qui est manuelle ou automatique. Pour s'exécuter,
contrôlée séparément, a son propre état une activité utilise des ressources
interne et sa propre identité externe. Cette humaines et/ou machines. Quand une
exécution peut inclure le stockage et la ressource est requise, la réalisation de
synthèse de données d'audit l'activité est attribuée à un participant
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Activité Instance d’activité
Activité automatique : une activité qui s'exécute Une instance d'activité représente une activité au
sur un ordinateur et qui est entièrement sein d'une instance de processus. Une instance
contrôlée par le système de gestion de activité est créée et gérée quand cela est requis
processus pour l'exécution d'une instance de processus en
accord avec la définition du processus. Plusieurs
Activité manuelle : une activité non automatisée instances d'activité peuvent être associées au
qui reste en dehors du contrôle du système de même moment à une instance de processus
gestion de processus. Ces activités peuvent (cas d'activités parallèles) mais une instance
cependant être inclues dans la définition d'un
processus à des fins de modélisation mais ne d'activité ne peut pas être associée à plus d'une
font pas partie du workflow résultant instance de processus (WfMC)
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Etats d’une activité Dimensions des processus
• Dimension logique
– Quelles activités
– Dans quel ordre
• Dimension organisationnelle
– Qui exécute
– Les rôles, les agents, les fonctions
• Dimension informationnelle
– Avec quoi
– Les programmes, les ressources
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Dimension logique (survol)
Description de la séquence des activités à
réaliser pour accomplir l’objectif du processus
en suivant son flot de contrôle.
Concepts de base Le flot de contrôle utilise l’état des activités et
les données pertinentes pour décider de la
navigation dans le modèle
Dimension logique Une activité a un type, une pre- et une post-
condition, un conteneur d’entrée et un
conteneur de sortie dans lequel elle lit et
produit ses données, en particulier les
données pertinentes
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Types d’activité Données pertinentes
Un sous-processus est un processus qui est Les données pertinentes sont utilisées par le
appelé par un autre processus qui l'initialise. Le SGWf pour évaluer les conditions de
sous-processus forme ainsi une partie du
processus englobant. Plusieurs niveaux
transition, typiquement les pré- et post-
d'emboîtement de processus peuvent être conditions des activités. Elles peuvent être
supportés transmises d'une activité à une autre et
Une activité qui ne se décompose pas, qui n'est ainsi influent sur les prochaines activités à
pas un sous-processus, est une activité élire pour exécution. Elles sont aussi
atomique
utilisées et modifiées par les applications
Une boucle permet la répétition de l'activité jusqu'à
ce qu'une condition de fin soit vérifiée qui implantent les activités
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Conteneurs d’entrée et de sortie Transition
Une activité lit ses données dans son conteneur Une transition est un point dans l'exécution
d’entrée et écrit ses résultats dans son d'une instance de processus où une
conteneur de sortie activité se termine et une autre démarre.
Une transition peut être inconditionnelle (la
terminaison de l'activité précédente
déclenche le démarrage de l'activité (ou
des acticités) suivante(s)) ou
conditionnelle (ce déclenchement est
gardé par une condition logique)
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Pré-condition, Post-condition Flot de contrôle
Le flot de contrôle réfère à l'ordre dans
Une pré-condition (resp. post-condition) est
lequel les activités sont exécutées et c'est
une condition logique portant sur les
l'évaluation des règles de transition entre
données relevantes qui est évaluée par le
les activités qui décident de la navigation
SGWf pour décider si une instance
dans le modèle de processus et du flot de
d'activité peut démarrer (resp. terminer)
contrôle
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Patron de flot de contrôle
Modèle générique de déclenchement d’une
activité en fonction de la terminaison des
activités qui la précèdent dans le flot de Concepts de base
contrôle
Les patrons de base sont les patrons
Dimension organisationnelle
Sequence, AND_SPLIT, AND_JOIN,
XOR-SPLIT, XOR_JOIN
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Méta-modèle organisationnel Participant
Un participant est une ressource qui réalise une
instance d'activité. Le lien entre une instance
d'activité et le participant qui la réalise s'établit
lorsque ce participant choisit dans sa corbeille
de bons de travail le bon de travail
correspondant à cette instance d'activité
Un participant est en général une personne, mais il
peut aussi être une machine. Un participant peut
être défini explicitement dans le processus, mais
en général, il est identifié par référence à un rôle
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Rôle Instance du modèle organisationnel
Un rôle définit le contexte dans lequel un
utilisateur participe à un processus ou une
activité. Le concept de rôle est une idée
organisationnelle, telle que la capacité, le
savoir-faire, la responsabilité, l'autorité
mais peut aussi référer à d'autres attributs
tels que la localisation, la disponibilité, les
données … C'est aussi un mécanisme qui
permet d'associer les participants aux
instances d'activité
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Unité organisationnelle Processus intra-organisationnel
• Entreprise, département, groupe
d’individus … compétent pour réaliser un
ensemble d’activités
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Processus inter-organisationnel
Concepts de base
Dimension informationnelle
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Application invoquée,
Bon de travail
application cliente
Application est un terme général pour désigner un Un bon de travail est une représentation
programme logiciel qui interagit avec un SGWf d'un travail à réaliser pour un rôle. Une
Une application invoquée est une application instance d'activité génère un ou plusieurs
appelée par le SGWf pour automatiser, bons de travail qui réalise(nt) la tâche
complètement ou partiellement une activité, ou correspondant à cette instance d'activité.
pour aider un participant à réaliser un bon de Un bon de travail est en général présenté
travail
aux ressources qui ont le rôle requis par
Une application cliente est une application qui
l'intermédiaire de leurs corbeille de bons
demande un service au SGWf
de travail
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Corbeille de bons de travail Exécution d’une activité
Lorsque qu'une instance d'activité est créée, (au
moins) un bon de travail correspondant est créé
et déposé dans la corbeille de bons de travail de
toutes les ressources possédant le rôle
nécessaire pour réaliser l'activité. La première
ressource qui choisit un bon de travail est
responsable de la réalisation de ce travail; cette
ressource devient un participant du processus.
Cela a pour effet de retirer les duplicatas de ce
bon de travail dans toutes les corbeilles des
autres ressources
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Modèle d’activité/Bon de Liaison d’un bon de travail à une
travail/Instance d’activité ressource
• Qui ?
• Modèle d’activité : étape logique d’un
modèle de processus – « Push » ou « Pull », équilibrage de charge,
spécialisation …
• Bon de travail = modèle d’activité + cas
• Instance d’activité = modèle d’activité + • Dans quel ordre ?
cas + ressource (bon de travail attaché à – FIFO, LIFO, gestion de priorité …
une ressource)
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Objectif
• Simplifier la modélisation des processus
• Réutiliser des solutions éprouvées
Concepts de base • Permettre la comparaison des langages et
des systèmes
Patrons de flots de contrôle
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Classes de patrons Patrons de flot de contrôle
• Patrons de flots de contrôle de base
– Séquence, Branchement multiple (And-Split),
Synchronisation (And-join), Choix exclusif
(Xor-Split), Jonction simple (XOR-join)
• Patrons de flots de contrôle avancés
– Choix multiple (OR-Split), Jonction multiple,
Jonction synchronisée, Discriminateur
Pour plus : http ://www.workowpatterns.com/
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Séquence Séquence
On parle de séquence lorsqu'au cours d'un • Dans la séquence des deux activités A et B, A
processus, les activités sont exécutées les est activée d'abord puis à la fin de son
unes à la suite des autres, et que c'est le exécution, B est activée
seul itinéraire possible.
• depAct(A,B) et condAct(B) = terminé(A)
• Exécution acceptée : AB
depAct(A,B) dénote une dépendance d’activation entre A et B (B ne peut s’activer que si A est terminée)
CondAct(B) dénote la condition d’activation de B : ici que A terminé
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Branchement multiple Branchement multiple
Il y a branchement multiple lorsqu'un • Après l'exécution de l'activité A, les activités B
itinéraire unique se sépare en deux ou et C sont activées et exécutées en parallèle
plusieurs itinéraires différents dans le but
de réaliser deux ou plusieurs activités en
parallèle
• depAct(A,B) et depAct(A,C) et (condAct(B) =
terminé(A)) et (condAct(C) = terminé(A))
Exécutions acceptées : ABC, ACB
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Synchronisation Synchronisation
Il y a synchronisation lorsque deux ou • L'activation de l'activité C est conditionnée par
plusieurs itinéraires parallèles convergent la fin de l'exécution des activités A et B
vers un itinéraire unique et que l'on assure
la synchronisation des itinéraires, c'est-à-
dire qu'on ne passe à l'activité suivante
que lorsque toutes les activités parallèles
sont terminées • depAct(A,C) et depAct(B,C) et condAct(C) =
terminé(A) et terminé(B)
• Exécutions acceptées : ABC; BAC
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Choix exclusif Choix exclusif
• On parle de Choix exclusif lorsqu'un • Après la fin d'exécution de l'activité A, soit l'activité B
soit l'activité C est activée, à l'exclusion l'une de l'autre
itinéraire s'ouvre sur plusieurs itinéraires
ED1
possibles et que le cas d'exécution suit un
ED2
seul de ces itinéraires, selon les conditions
ED3
de transition. Le choix se fait sur la base
de l'évaluation de la condition associée • depAct(A,B) et depAct(A,C) et condAct(B) = terminé(A)
aux transitions du patron, ces conditions et cond(B); condAct(C) = terminé(A) et cond(C) et
non(cond(B) et cond(C))
étant exclusives l'une de l'autre
• Exécutions acceptées : AB; AC
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Jonction simple Jonction simple
• Il y a jonction simple lorsque deux ou • L'activation de l'activité A est conditionnée par la fin
de l'exécution de l'activité B ou de l'activité C
plusieurs itinéraires convergent vers une
même activité. Il ne s'agit pas de la ED1
synchronisation de plusieurs itinéraires, ED2
mais plutôt de la jonction de plusieurs ED3
itinéraires alternatifs • depAct(A,C) et depAct(B,C) et condAct(C) =
terminé(A) ou terminé(B) et non(terminé(A) et
terminé(B))
• Exécutions acceptées : AC; BC
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Choix multiple Choix multiple
• On parle de choix multiple lorsqu'un • Après la fin d'exécution de l'activité A, l'activité B,
itinéraire s'ouvre sur plusieurs itinéraires l'activité C ou les deux sont activées, en fonction
possibles et que le cas d'exécution suit un des conditions associées aux transitions
ou plusieurs de ces itinéraires, selon les
conditions de transition
• Exécutions acceptées : AB; AC; ABC; ACB
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Jonction multiple Jonction multiple
• Il y a jonction multiple lorsque deux ou
plusieurs itinéraires convergent vers un
itinéraire unique et que l'on assure
l'activation de ce dernier autant de fois
qu'il y a d'itinéraires actifs
• ABD; ACD; ABCDD; ACBDD; ABDCD; ACDBD
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Jonction synchronisée Jonction synchronisée
• Il y a jonction synchronisée lorsque deux
ou plusieurs itinéraires convergent vers un
itinéraire unique et que l'on assure la
synchronisation des itinéraires actifs
• ABD; ACD; ABCD; ACBD
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Discriminateur Discriminateur
• On utilise un discriminateur lorsque deux
ou plusieurs itinéraires convergent vers un
itinéraire unique dont on assure l'activation
une seule fois. L'activation se fait après la
terminaison d'un premier itinéraire. Les
terminaisons des autres sont ignorées
• Exécutions acceptées : ABCD; ACBD; ABDC;
ACDB; BD; CD
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Symboles BPMN (1)
Notations
BPMN
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Exemple de modèle de
Symboles BPM (2)
processus en BPMN :
l’organisation d’un voyage
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Processus intra-organisationnel Processus inter-organisationnel
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Patrons de base en BPMN Patrons avancés en BPMN
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Références
Conclusion • [AAL 03] VAN DER AALST W. M. P., TER HOFSTEDE A. H. M., KIEPUSZEWSKI B.,
BARROS A. P., «Workflow Patterns », Distrib. Parallel Databases, vol. 14, n˚ 1, p. 5-
51, Kluwer Academic Publishers, Dordrecht, Hollande, 2003.
• Des outils variés mais • [AAL 08] VAN DER AALST W. M. P., TER HOFSTEDE A. H. M.,
www.workflowpatterns.com/, rapport, 2008.
• [BPM 08a] BPMI, Business Proces Management Initiative, www.bpmi.org, rapport,
• Un cadre conceptuel normalisé (WfMC, 2008.
• [BPM 08b] BPMN, Business Process Modeling Notation, www.bpmi.org, rapport,
patrons …) 2008.
• [GAM 95] GAMMA E., HELM R., JOHNSON R., VLISSIDES J., Design Patterns :
• Et des notations normalisées (BPMN, •
Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, 1995.
[KAV 04] KAVANTZAS N., BURDETT D., RITZINGER G., LAFON Y., «Web Services
XPDL …) Choreography Description Language Version 1.0 », www.w3.org/TR/ws-cdl-10,
octobre 2004.
• [MUE 08] ZUR MUEHLEN M., RECKER J., « How Much Language is Enough ?
• Autres notations étudiées dans le chapitre Theoretical and Practical Use of the Business Process Modeling Notation », 20th
Conference on Advanced Information Systems (CAiSE ’08), Lecture Notes in
suivant : •
Computer Science, Montpellier, France, Springer, Heidelberg, juin 2008.
[OAS 07] OASIS, Web Services Business Process Execution Language, Version 2.0,
– Réseaux de Pétri •
2007.
[OMG 00] OMG, Workflow Management Facility Specification, V 1.2, OMG (Object
Management Group), www.omg.org, avril 2000.
– UML
©Les processus métiers: concepts, modèles et systèmes ©Les processus métiers: concepts, modèles et systèmes
Références
• [SIT 08a] SITE, www.workflowpatterns.com/vendors/, 2008.
• [SIT 08b] SITE, www.workflowpatterns.com/evaluations/standard/index.php,
2008.
• [W3C 02] W3C, « Business Process Modeling Language 1.0 Technical
Report », BPMI Consortium, www.bpmi.org, juin 2002.
• [W3C 07a] W3C, «Web Services Description Language (WSDL) Version 2.0
», www.w3.org/TR/wsdl20, 26 juin 2007.
• [W3C 07b] W3C, « SOAP Version 1.2 », www.w3.org/TR/soap, 27 avril
2007.
• [WFM 96] WFMC, Terminology and glossary. Technical Report WFMS-TC-
1011, Technical report, Workflow Management Coalition Brussels -
Belgique, 1996.
• [WFM 08] WFMC, www.wfmc.org/, rapport, 2008.
• [WHI 04] WHITE S., Process Modeling Notations and Workflow Patterns,
Workflow Handbook, 265-294, L. Fischer (dir.), Future Strategies Inc.,
Lighthouse Point, Etats-Unis, 2004.
• [WOH 05] WOHED P., VAN DER AALST W., DUMAS M., TER HOFSTEDE
A., RUSSELL N., Pattern-based Analysis of BPMN - An extensive
evaluation of the Control-flow, the Data and the Resource Perspectives.,
Bpm-05-26, BPM Center, Queensland University ofTechnology, 2005.
©Les processus métiers: concepts, modèles et systèmes