Kherbouche PDF
Kherbouche PDF
Kherbouche PDF
métiers
Mohammed Oussama Kherbouche
THÈSE
P se t e e ue d’o te i le g ade de
DOCTEUR de l’U i e sit du Litto al Côte d’Opale
Spécialité : Informatique
COMPOSITION DU JURY :
M. Christophe Renaud P ofesseu à l’U i e sit du Litto al Côte d’Opale Examinateur (Président)
Th se alis e au sei du La o atoi e d’I fo ati ue Sig al et I age de la Côte d’Opale - EA 4491-
Équipe Model (multi-modélisation et évolution des logiciels)
Maison de la Recherche Blaise Pascal 50, rue Ferdinand Buisson BP 719 62228 Calais Cedex France
« …Le savoir scientifique n'est pas absolu, mais socialement, culturellement, tech-
nologiquement et historiquement marqué, donc provisoire… » Steven Rose
Remerciements
Les travaux présentés dans ce manuscrit ont été effectués au sein du Laboratoire
d’I fo ati ue Sig al et I age de la Côte d’Opale LISIC de l’U i e sit du Litto al Côte
d’Opale ULCO). Je souhaite adresser mes remerciements à toutes les personnes qui ont
contribué de près ou de loin à l’ la o atio de mes travaux de recherche.
Mes remerciements seraient incomplets si je n'y associe pas toutes les personnes
qui ont contribué à ce travail, en particulier, mes collègues, messieurs Adeel Ahmad et
Mourad Bouneffa, le directeur du laboratoire monsieur Christophe Renaud et tout le per-
sonnel du laboratoire.
Au final, j’ai e ais exprimer toute mon attention très affectueuse et ma gratitude
à mes parents, pour leur indéfectible soutien, leur patience et leur conseil avisé dans tous
mes choix professionnels et personnels, durant toute cette période. À mes frères et
sœu s, à toute ma famille ainsi que mes amis.
Mots-clés
Processus métier – modèles BPMN – Model-checking – A al se d’i pa ts – relations de dépendance, BPM
Quality.
Abstract
The evolution management of the business processes requires an exhaustive un-
derstanding of the change. An evolution engineer needs to understand reasons of a
change, its application levels, and subsequently its impact on the whole system. In this
thesis, we propose an approach for an a priori change impact analysis, to better control
the business process evolution. This may help the business experts and the process de-
signers to evaluate change impact in order to reduce the associated risks and estimate
the related costs. It may also help to improve the service and quality of the business pro-
cesses.
Keywords
Business process, BPMN models, Model-checking, Impact Analysis, dependency relationships, BPM Quality.
Table des matières
Résumé .......................................................................................................................................... - 5 -
Abstract .......................................................................................................................................... - 5 -
Introduction ................................................................................................................................. - 13 -
Chapitre 1. Cadre théorique et problématique .......................................................................... - 17 -
1.1 Contexte et terminologie ................................................................................................. - 18 -
1.2 E t ep ise, pilotage et s st e d’i fo atio ................................................................ - 18 -
1.3 Le p o essus da s la gou e a e du s st e d’i fo atio ........................................ - 19 -
1.4 Processus, procédure et procédé..................................................................................... - 22 -
1.5 Processus métier .............................................................................................................. - 22 -
1.6 La gestion des processus métier (BPM) ........................................................................... - 23 -
1.7 C le de ie d’u p o essus tie .................................................................................. - 23 -
1.7.1 Phase de modélisation ............................................................................................. - 24 -
1.7.2 Phase d’i pl e tatio .......................................................................................... - 24 -
1.7.3 Phase d’e utio .................................................................................................... - 25 -
1.7.4 Phase d’a al se et d’opti isatio ........................................................................... - 25 -
1.8 Technologies de processus métier ................................................................................... - 26 -
1.8.1 Processus et workflow ............................................................................................. - 26 -
1.8.1.1 La notion de workflow.......................................................................................... - 26 -
1.8.1.2 Les systèmes de gestion de workflow .................................................................. - 26 -
1.8.2 Services web ............................................................................................................. - 26 -
1.8.3 Le moteur du BPM.................................................................................................... - 27 -
1.9 La modélisation des processus métier ............................................................................. - 27 -
1.9.1 Les langages de modélisation des processus métier ............................................... - 28 -
1.9.1.1 Le standard BPMN ................................................................................................ - 28 -
1.9.1.2 Le diag a e d’a ti it s UML ............................................................................. - 30 -
1.9.1.3 Le paradigme de logique déontique .................................................................... - 31 -
1.9.1.4 Le paradigme de la logique temporelle linéaire (LTL) .......................................... - 31 -
1.9.1.5 Le paradigme de modélisation basée sur les règles............................................. - 32 -
1.9.1.6 Les diagrammes EPC (chaîne de processus événementielle) ............................... - 32 -
1.9.2 Les la gages d’e utio des p o essus tie ...................................................... - 33 -
1.9.2.1 Le langage XPDL.................................................................................................... - 34 -
1.9.2.2 Le langage ebXML................................................................................................. - 34 -
1.9.2.3 Le langage WSFL .................................................................................................. - 34 -
1.9.2.4 Le langage XLANG ................................................................................................. - 35 -
1.9.2.5 BPEL ...................................................................................................................... - 35 -
1.10 La t adu tio des la gages g aphi ues e s les la gages d’e utio ............................ - 37 -
1.11 Les règles métier .............................................................................................................. - 38 -
1.12 Caractéristiques des modèles & langages de processus métier ...................................... - 38 -
1.13 Les di e sio s de la od lisatio d’u p o essus tie .............................................. - 39 -
1.13.1 La dimension fonctionnelle ...................................................................................... - 39 -
1.13.2 La dimension comportementale .............................................................................. - 39 -
1.13.3 La dimension informationnelle ................................................................................ - 40 -
1.13.4 La dimension organisationnelle................................................................................ - 40 -
1.13.5 La dimension opérationnelle .................................................................................... - 40 -
1.14 Réactivité, flexibilité et agilit d’u e e t ep ise .............................................................. - 40 -
1.15 La flexibilité de la modélisation des processus métier..................................................... - 41 -
1.16 Les taxonomies de la flexibilité des processus métier ..................................................... - 41 -
1.17 Gouvernance du changement des processus métier ....................................................... - 44 -
1.18 Nos contributions ............................................................................................................. - 45 -
1.19 Conclusion ........................................................................................................................ - 46 -
Chapitre 2. Vérification et intégration des pro essus étier et État de l’art............................ - 47 -
2.1 Introduction...................................................................................................................... - 48 -
2.2 La cohérence des modèles de processus métier.............................................................. - 48 -
2.2.1 Les incohérences structurelles ................................................................................. - 49 -
2.2.2 Les incohérences fonctionnelles .............................................................................. - 49 -
2.2.3 Les incohérences comportementales ...................................................................... - 50 -
2.2.4 Les incohérences techniques.................................................................................... - 50 -
2.3 Les techniques de vérification des modèles de processus métier ................................... - 50 -
2.3.1 La vérification par modèles formels ......................................................................... - 51 -
2.3.1.1 Les automates ...................................................................................................... - 51 -
2.3.1.2 Les réseaux de Petri.............................................................................................. - 52 -
2.3.1.2.1 Propriété d'absence de blocage "No deadlock" ............................................... - 53 -
2.3.1.2.2 Propriété d'atteignabilité "Reachability".......................................................... - 54 -
2.3.1.2.3 Propriété de sûreté "Safety" ............................................................................. - 54 -
2.3.1.2.4 Propriété d'équité "Fairness" ............................................................................ - 54 -
2.3.1.2.5 Propriété de vivacité "Liveness" ....................................................................... - 54 -
2.3.1.3 L’alg e de p o essus ......................................................................................... - 56 -
2.3.2 La vérification par guide de style ............................................................................. - 58 -
2.3.3 La vérification par conception .................................................................................. - 59 -
2.3.4 La vérification par simulation ................................................................................... - 59 -
2.3.5 La vérification par process-mining ........................................................................... - 59 -
2.4 Les te h i ues d’i t g atio & de gestio des ha ge e ts des p o essus tie ...... - 60 -
2.4.1 Typologie des changements des processus métier .................................................. - 60 -
2.4.2 Typologie des opérations de changement ............................................................... - 62 -
2.4.3 Les propriétés de changement ................................................................................. - 63 -
2.4.3.1 L’a pleu du ha ge e t "Extent of change" .................................................... - 64 -
2.4.3.2 La durée du changement "Duration of change" .................................................. - 64 -
2.4.3.3 La rapidité du changement "Swiftness of change" .............................................. - 64 -
2.4.3.4 L’a ti ipatio du ha ge e t "Anticipation of change" ..................................... - 64 -
2.4.4 Techniques d'évolution ............................................................................................ - 64 -
2.4.4.1 L’app o he ad-hoc ................................................................................................ - 64 -
2.4.4.2 L’app o he pa d i atio .................................................................................... - 65 -
2.4.4.3 L’app o he pa h itage ....................................................................................... - 65 -
2.4.4.4 L’app o he pa i du tio ..................................................................................... - 65 -
2.4.4.5 L’app o he pa fle io ...................................................................................... - 66 -
2.4.4.6 L’app o he à ase de gles ................................................................................. - 66 -
2.4.5 Techniques de migration .......................................................................................... - 67 -
2.4.5.1 L’app o he pa a ulatio ................................................................................... - 67 -
2.4.5.2 L’approche sans propagation ............................................................................... - 67 -
2.4.5.3 L’app o he a e p opagatio ............................................................................... - 67 -
2.4.6 Techniques de flexibilité........................................................................................... - 68 -
2.4.6.1 L’app o he pa s le tio ta di e "Late binding".................................................. - 68 -
2.4.6.2 L’app o he pa od lisatio ta di e "Late modeling" ........................................ - 68 -
2.5 Conclusion ........................................................................................................................ - 69 -
Chapitre 3. La Vérification des modèles de processus métier par le Model Checking ............. - 71 -
3.1 Introduction ..................................................................................................................... - 72 -
3.2 Le model-checking............................................................................................................ - 74 -
3.2.1 Principe du model-checking ..................................................................................... - 74 -
3.2.2 Système de transitions ............................................................................................. - 75 -
3.2.2.1 Structure de kripke ............................................................................................... - 76 -
3.2.3 Les propriétés vérifiées par le model checking ........................................................ - 77 -
3.2.3.1 P op i t d’atteig a ilit " Reachability" ............................................................ - 77 -
3.2.3.2 Propriété de sûreté "Safety" ................................................................................ - 77 -
3.2.3.3 P op i t d’ uit "Fairness" ............................................................................... - 78 -
3.2.3.4 Propriété de vivacité "Liveness" ........................................................................... - 78 -
3.2.3.5 P op i t d’a se e de lo age "Deadlock-freeness" ......................................... - 78 -
3.2.4 La logique Temporelles Linéaire (LTL) ...................................................................... - 78 -
3.3 SPIN Model Checker ......................................................................................................... - 80 -
3.4 Les erreurs structurelles ................................................................................................... - 81 -
3.4.1 L’i passe "Deadlock patterns" ................................................................................ - 81 -
3.4.2 Boucles infinies "Livelocks patterns" ........................................................................ - 82 -
3.4.3 Terminaison multiples "Multiples terminations patterns" ....................................... - 83 -
3.5 La vérification des modèles de processus métier basée sur le model-checking.............. - 83 -
3.5.1 G atio de l’auto ate à tats fi is..................................................................... - 83 -
3.5.2 Formules LTL de la cohérence d'un modèle de processus métier ........................... - 85 -
3.5.2.1 D te tio de l’a se e de lo ages ..................................................................... - 85 -
3.5.2.2 Détection des boucles infinies.............................................................................. - 86 -
3.5.2.3 Détection des terminaisons multiples .................................................................. - 86 -
3.5.3 Model Checking ........................................................................................................ - 86 -
3.5.4 Déterminer la zone impactée ................................................................................... - 86 -
3.6 La vérification des modèles de processus métier à l'aide de SPIN................................... - 87 -
3.6.1 Processus de vente de voitures ................................................................................ - 89 -
3.7 La vérification des règles de conformité .......................................................................... - 91 -
3.7.1 Représentation déclarative des règles de conformité ............................................. - 93 -
3.7.2 Processus de remboursement des frais de fonctionnement ................................... - 94 -
3.8 Conclusion ........................................................................................................................ - 97 -
Chapitre 4. Analyse a priori de l’I pa t du changement des modèles de processus métier . - 100 -
4.1 Introduction.................................................................................................................... - 101 -
4.2 Gestion du changement des processus métier .............................................................. - 102 -
4.3 A al se de l’i pa t du ha ge e t da s la litt atu e ................................................ - 103 -
4.4 P i ipe de l’a al se de l’i pa t du ha ge e t.......................................................... - 103 -
4.5 A al se de l’i pa t du ha ge e t des p o essus tie ........................................... - 104 -
4.6 Analyse des relations de dépendance ........................................................................... - 106 -
4.6.1 Taxonomie de la dépendance dans les modèles de processus métier .................. - 107 -
4.6.2 Modèle de dépendance pour l'étude d'impact...................................................... - 108 -
4.6.2.1 Relations de dépendance intra-couches ............................................................ - 108 -
4.6.2.1.1 D pe da es d a tivit s outage ................................................................. - 108 -
4.6.2.1.2 Dépendances de données ............................................................................... - 109 -
4.6.2.1.3 Dépendances de rôles..................................................................................... - 110 -
4.6.2.2 Relations de dépendance inter-couches ............................................................ - 110 -
4.7 P opagatio de l’i pa t du ha ge e t ....................................................................... - 111 -
4.7.1 La métrique P ......................................................................................................... - 112 -
4.7.2 La métrique E ......................................................................................................... - 112 -
4.7.3 La métrique F.......................................................................................................... - 112 -
4.7.4 La métrique ND ...................................................................................................... - 112 -
4.8 Mod lisatio de la p opagatio de l’i pa t du ha ge e t ........................................ - 113 -
4.8.1 La base de connaissances ....................................................................................... - 113 -
4.8.2 Le système à base de règles ................................................................................... - 117 -
4.8.2.1 Définition 1 (processus métier) .......................................................................... - 117 -
4.8.2.2 D fi itio i sta e d’u p o essus tie ................................................... - 118 -
4.8.2.3 Définition 3 (activité).......................................................................................... - 118 -
4.8.3 Définition des règles de "faisabilité du changement" ............................................ - 118 -
4.8.3.1 I se tio d’u f ag e t de p o essus au i eau du s h a ............................ - 119 -
4.8.3.2 Supp essio d’u f ag e t de p o essus au i eau du s h a ....................... - 119 -
4.8.3.3 I se tio et supp essio d’u f ag e t de p o essus au i eau de l’i sta e . - 120 -
4.8.4 D fi itio des gles de p opagatio de l’i pa t du ha ge e t ........................ - 122 -
4.8.4.1 R gle d’a al se des d pe da es intra-couche (analyse des dépendances
d’a ti it s .......................................................................................................................... - 122 -
4.8.4.2 R gle d’a al se des d pe da es i t a-couche (analyse des dépendances de
données) - 123 -
4.8.4.3 R gle d’a al se des d pe da es i te -couche ................................................ - 124 -
4.9 Conclusion ...................................................................................................................... - 124 -
Chapitre 5. La gestion qualitative des processus métier.......................................................... - 126 -
5.1 Introduction ................................................................................................................... - 127 -
5.2 Gestion qualitative des processus métier ...................................................................... - 128 -
5.3 Évaluation de la qualité des modèles de processus métier ........................................... - 128 -
5.3.1 Tou d’ho izo des app o hes e ista tes .............................................................. - 129 -
5.3.1.1 Mesu e la o ple it d’u od le de p o essus tie ................................. - 130 -
5.3.1.2 Mesu e le ouplage d’u od le de p o essus tie .................................... - 131 -
5.3.1.3 Mesu e la oh sio d’u od le de p o essus tie .................................... - 132 -
5.3.1.4 Mesu e la odula it d’u od le de processus métier................................. - 132 -
5.3.1.5 Mesu e la taille d’u od le de p o essus tie ........................................... - 132 -
5.4 L’app o he p opos e ...................................................................................................... - 133 -
5.4.1 Efficacité "Efficiency" .............................................................................................. - 135 -
5.4.1.1 L’effi a it du te ps de alisatio "Time Behaviour" ...................................... - 135 -
5.4.1.2 L’effi a it des essou es e plo es "Resource efficiency" ............................ - 136 -
5.4.1.3 L’effi a it des oûts "Cost efficiency" ............................................................... - 136 -
5.4.2 Fiabilité "Reliability" ............................................................................................... - 136 -
5.4.2.1 La maturité "Maturity" ....................................................................................... - 136 -
5.4.2.2 La tolérance aux pannes "Fault Tolerance" ........................................................ - 136 -
5.4.2.3 La capacité de récupération "Recoverability" .................................................... - 136 -
5.4.3 Performance "Performance" .................................................................................. - 136 -
5.4.3.1 Le débit de traitement "Throughput rates" ....................................................... - 136 -
5.4.3.2 Le te ps d’e utio "Execution time" ............................................................. - 137 -
5.4.3.3 Le temps de réponse "Timeliness" ..................................................................... - 137 -
5.4.3.4 Le oût d’e utio "Execution cost" ................................................................. - 137 -
5.4.4 Ressource "Resource"............................................................................................. - 137 -
5.4.4.1 Interopérabilité "Interoperability" ..................................................................... - 137 -
5.4.4.2 Sécurité "Security" .............................................................................................. - 137 -
5.4.4.3 Déploiement "Deployment" .............................................................................. - 137 -
5.4.5 Acteur "Actor" ........................................................................................................ - 137 -
5.4.5.1 Disponibilité "Availability".................................................................................. - 138 -
5.4.5.2 Aptitude "Suitability".......................................................................................... - 138 -
5.4.6 Mesurer la qualité des processus métier ............................................................... - 138 -
5.4.6.1 Mesu e l’i te op a ilit .................................................................................. - 139 -
5.4.6.2 Mesurer la maturité ........................................................................................... - 139 -
5.4.6.3 Mesurer la tolérance aux pannes ....................................................................... - 140 -
5.4.6.4 Mesurer le temps de réponse ............................................................................ - 140 -
5.4.7 Analyse et interprétation des mesures obtenues .................................................. - 140 -
5.5 A al se de l’i pa t ualitatif du ha ge e t des p o essus tie ........................... - 141 -
5.5.1 Dépendances entre les critères de qualité ............................................................. - 142 -
5.6 Conclusion ...................................................................................................................... - 144 -
Chapitre 6. Prototype de validation .......................................................................................... - 145 -
6.1 Introduction ................................................................................................................... - 146 -
6.2 Architecture Globale du prototype de validation .......................................................... - 147 -
6.2.1 Le plug-in BPMN2 Modeler .................................................................................... - 149 -
6.2.2 Le plug-in BPMNVT ................................................................................................. - 149 -
6.2.2.1 BPMN2PROMELA ............................................................................................... - 150 -
6.2.2.2 CR2LTL ................................................................................................................ - 152 -
6.2.3 Le plug-in BPMNQ .................................................................................................. - 152 -
6.2.4 Le plug-in BPMN-CPA ............................................................................................. - 155 -
6.2.4.1 Implémentation du système à base de règles ................................................... - 155 -
6.3 Expérimentation ............................................................................................................. - 156 -
6.3.1 Schéma initial S du processus ................................................................................ - 156 -
6.3.2 S h a sulta t S’ du p o essus .......................................................................... - 156 -
6.3.3 Vérification de la cohérence et de la conformité du processus............................. - 157 -
6.3.4 Évaluation de la qualité du processus métier ........................................................ - 157 -
6.4 Conclusion ...................................................................................................................... - 160 -
Chapitre 7. Conclusion et perspectives ..................................................................................... - 161 -
7.1 Résumé des contributions.............................................................................................. - 162 -
7.1.1 Bilan des contributions........................................................................................... - 162 -
7.1.1.1 Contribution à la vérification formelle des processus métier ............................ - 162 -
7.1.1.2 Co t i utio à l’a al se a p io i de l’i pa t du ha ge e t des p o essus tie .. -
163 -
7.1.1.3 Contribution à la gestion qualitative des processus métier............................... - 164 -
7.1.2 Perspectives des travaux ........................................................................................ - 164 -
Bibliographie .............................................................................................................................. - 167 -
Table des figures
Figu e . La o positio d u s st e d e t ep ise ..................................................................................- 19 -
Figure 1.2 Système d'information et système informatique ........................................................................- 20 -
Figure 1.3 Typologie des processus ..............................................................................................................- 21 -
Figure 1.4 Méta modèle du processus métier selon (Morley, Hughes, Leblanc, & Hugues, 2007) ...............- 23 -
Figure 1.5 Cycle de vie du BPM ....................................................................................................................- 24 -
Figure 1.6 Pile de protocoles de services web .............................................................................................- 27 -
Figure 1.7 Modélisation impérative et modélisation déclarative .................................................................- 28 -
Figu e . Él e ts de ase d u BPMN .....................................................................................................- 29 -
Figure 1.9 Processus de vente aux enchères modélisé par la notation BPMN .............................................- 30 -
Figure 1.10 Représentation graphique des p i ipau o epts da s u diag a e d a tivit s. ..............- 31 -
Figu e . P o essus de o a de od lis pa le diag a e d a tivités .............................................- 31 -
Figure 1.12 Un exemple simple d'un modèle CONDEC. ................................................................................- 32 -
Figu e . Él e ts de ase d u diag a e EPC. ...................................................................................- 33 -
Figure 1.14 Processus de traitement des commandes modélisé en EPC. .....................................................- 33 -
Figure 1.15 Chronographe des diff e ts la gages d e utio des p o essus tie ................................- 34 -
Figure 1.16 Transformation de BPMN à BPEL ..............................................................................................- 37 -
Figure 1. 17 Les notions de changement selon la classification de Regev et al. ...........................................- 42 -
Figure 1.18 Les notions de changement selon la classification de Nurcan ..................................................- 44 -
Figure 2.1 Les éléments constituant un automate .......................................................................................- 51 -
Figure 2.2 Les éléments constituants un réseau de Petri .............................................................................- 53 -
Figu e . La v ifi atio d u p o essus tie pa les ‘dP .......................................................................- 55 -
Figure 2.4 Niveaux de changement de processus .......................................................................................- 61 -
Figure 3.1 Principe du model-checking. .......................................................................................................- 75 -
Figure 3.2 Un exemple de structure de kripke. .............................................................................................- 77 -
Figure 3.3 Les connecteurs temporels LTL. ...................................................................................................- 79 -
Figure 3.4 Les erreurs structurelles dans les modèles BPMN. ......................................................................- 82 -
Figure 3.5 Vérification des modèles de processus métier basée sur le model-checking. .............................- 83 -
Figure 3.6 Processus de vente de voitures. ...................................................................................................- 89 -
Figure 3.7 Vérification de la cohérence du processus de vente de voitures en jSpin ....................................- 92 -
Figure 3.8 La structure de kripke générée par jSpin .....................................................................................- 92 -
Figure 3.9 Processus de remboursement des frais de fonctionnement ........................................................- 94 -
Figure 3.10 La représentation graphique de la règle «R1» ..........................................................................- 96 -
Figure 3.11 La représentation graphique de la règle «R2» ..........................................................................- 97 -
Figure 3.12 La représentation graphique de la règle «R3» ..........................................................................- 97 -
Figure 3.13 Résultats de la vérification de conformités du processus en jSpin ...........................................- 97 -
Figure 4.1 Analyse de l'impact du changement des processus métier .......................................................- 105 -
Figure 4.2 Dépendances multicouches dans les processus métier .............................................................- 106 -
Figure 4.3 Hiérarchie des classes de BPMN 2 Ontology .............................................................................- 114 -
Figure 4.4 Hiérarchie des classes de extended BPMN 2 Ontology .............................................................- 116 -
Figure 4.5 Le fichier ExtendedOntoBPMN.owl ...........................................................................................- 116 -
Figu e . L ajout de l a tivit «X» et la supp essio de l'a tivit «B» .......................................................- 121 -
Figure 5.1 Représentation arborescente des facteurs, critères et métriques. ............................................- 135 -
Figure 5.2 Relations entre l'impact structurel, comportemental et qualitatif du changement. .................- 142 -
Figu e . Les d pe da es ho izo tales da s l valuatio de la ualit des p o essus tie . ..............- 143 -
Figure 6.1 Le plug-in BPMN2 Modeler. ......................................................................................................- 147 -
Figu e . L a hite tu e g ale de la plate-forme BPMN-CM. .............................................................- 148 -
Figu e . E t ait du fi hie d e t e « Des iptio logi ue ». .................................................................. - 149 -
Figu e . E t ait du fi hie d e t e « Des iptio g aphi ue». ............................................................... - 149 -
Figu e . L a hite tu e du plug-in BPMNVT. .......................................................................................... - 150 -
Figure 6.6 Exemple de l'arbre syntaxique. ................................................................................................. - 151 -
Figure 6.7 Fichier de configuration de BPMNVT. ....................................................................................... - 151 -
Figure 6.8 Le module CR2LTL. .................................................................................................................... - 152 -
Figure 6.9 Architecture du plug-in BPMNQ. .............................................................................................. - 152 -
Figure 6.10 Ajout de métriques Ad-hoc dans le plug-in BPMNQ. .............................................................. - 153 -
Figu e . Évaluatio des t i ues d u od le BPMN pa plug-in BPMNQ. ...................................... - 154 -
Figu e . G aphe d valuatio de la t i ue N. .................................................................................. - 154 -
Figure 6.13 Processus de remboursement des frais de fonctionnement. .................................................. - 156 -
Figure 6.14 Modèle Promela généré par BPMN2PROMELA. ..................................................................... - 158 -
Figure 6.15 Vérification de la cohérence du processus de remboursement des frais par EpiSpin. ............ - 158 -
Figure 6.16 Génération du fichier Expense_reimbursement_process.dot. ................................................ - 159 -
Figure 6.17 Visualisation du fichier Expense_reimbursement_process.dot avec Graphiz. ........................ - 159 -
Liste des tableaux
Table 2.1 Opérations basiques de changement. ..........................................................................................- 62 -
Table 2.2 Opérations complexes de changement. .......................................................................................- 63 -
Table 3.1 La cartographie des éléments de BPMN en structure de kripke. ..................................................- 85 -
Table 3.2 La cartographie des éléments de BPMN en Promela model. .......................................................- 89 -
Table 3.3 La notation graphique G-LTL. .......................................................................................................- 94 -
Table 5.1 Les similitudes entre les produits logiciels et les processus métier. ............................................- 130 -
Listing
Listi g . T adu tio de l a tivit Ve deu de voitu e e p o essus P o ela. .......................................... - 90 -
Listi g . T adu tio de l a tivit O te i u o us e p o essus P o ela. ............................................. - 90 -
Listi g . T adu tio de l a tivit O te i le ulleti de paie e p o essus P o ela. ................................ - 90 -
Listi g . T adu tio de l a tivit ulleti de paie e p o essus P o ela. ................................................ - 91 -
Listing 3.5 Le fichier Car_Salesman_process.pml ........................................................................................ - 91 -
Listing 3.6 Le fichier Expense_Reimbursement_Process.pml ....................................................................... - 95 -
Listing 4.1 Classe BPMN_element. ............................................................................................................ - 114 -
Listing 4.2 Classe IMPACT_ANALYSIS......................................................................................................... - 115 -
Listing 4.3 Classe DEPENDENCY_RELATIONSHIPS. .................................................................................... - 115 -
Listing 4.4 Classe ACTIVITY_DEPENDENCY. ............................................................................................... - 115 -
Listing 4.5 Classe DATA_DEPENDENCY. ..................................................................................................... - 115 -
Listi g . I se tio d u f ag e t de p o essus au iveau du schéma. .................................................. - 119 -
Listi g . Supp essio d u f ag e t de p o essus au iveau du s h a. ............................................. - 120 -
Listi g . I se tio d u f ag e t de p o essus au iveau des i sta es ............................................... - 120 -
Listing 4. Supp essio d u f ag e t de p o essus au iveau des i sta es. ......................................... - 121 -
Listi g . ‘ gle d a al se de l i pa t i t a- ou he a al se des d pe da es d a tivit s . ................ - 122 -
Listi g . ‘ gle d a al se de l i pa t i t a-couche (analyse des dépendances de données). .............. - 123 -
Listi g . ‘ gle d a al se de l i pa t i te -couche. .............................................................................. - 124 -
Listing 6. 1 La règle de p opagatio d i pa t du ha ge e t ................................................................. - 155 -
Introduction
Le o ept de p o essus tie o upe aujou d’hui une place majeure dans le do-
ai e des s st es d’i fo atio . Toutefois, es p o essus tie doi e t t e e o s-
tante évolution afin de permettre aux entreprises de répondre aux exigences du marché
et aux inflexions des besoins de leurs différents interlocuteurs, et par conséquent, de
construire ou préserver leur avantage concurrentiel.
À cet égard, une compréhension des connaissances descriptives des processus mé-
tier est une condition sine qu a none de la ussite d’u e telle olutio . La ise e
œu e de cette évolution revient donc à réaliser des changements plus ou moins impor-
tants de certains constituants du processus métier. Ces changements qui sont dus généra-
lement à une correction d'une ou plusieurs erreurs, à une exception dans le processus
métie , à la ise e o fo it a e des ou elles o es ou lois ju idi ues, à l’ olutio
du tie et des se i es de l’e t ep ise i o atio , à l'a lio atio des pe fo a es
et l’opti isatio des p o essus existants (re-engineering) peuvent engendrer des erreurs
(blocages, des exécutions infinies, des multiples terminaisons etc.), une non-conformité
avec la réglementation, une dégradation du service (temps de réponse, sécurité, taille des
messages, etc.), ou une mauvaise ualit de l’appli atio tout entière. Cela conduit à la
nécessité de mettre en place un mécanisme de gestion et de contrôle permettant de réa-
liser à la fois une vérification de la cohérence et de la conformité des modèles de proces-
sus métier modifié et à une analyse a priori de l’i pa t du changement de ces derniers et
une analyse a posteriori de l’i pa t effe tif de e ha ge e t.
Da s le ad e du o t ôle et de la gestio de l’ olutio des p o essus tie , ette
th se p opose u e app o he pe etta t e t e aut es, d’assiste les odeleurs et les ex-
perts métier à établir une vérification formelle des processus métier modélisé en BPMN
après chaque changement, et une évaluation a priori de l’i pa t st u tu el et ualitatif de
ces changements.
L’app o he est alid e e alisa t u e plate-forme spécifique permettant la ges-
tio de l’ olutio des p o essus tie . Cette plate-forme permet à la fois une vérifica-
tion de la cohérence et de la conformité des modèles de processus métier par la tech-
- 13 -
nique du model-checking, une analyse a priori de l’i pa t du ha ge e t de es de ie s
et une gestion qualitative de ces modèles. Le reste de la thèse est organisé comme suit :
- 14 -
Le hapit e alide la ise e œu e et les sultats de l’app o he de la od lisa-
tion proposée. Il décrit le d eloppe e t d’u e plate-forme de prototype pour la
gestio de l’ olutio des p o essus tie .
La conclusion générale de la contribution de cette thèse et les perspectives des
travaux de recherche sont données au chapitre 7 de ce manuscrit.
- 15 -
- 16 -
CHAPITRE
1
Cadre théorique et problématique
1. Cadre théorique et problématique
1
La valeur ajoutée est un indicateur économique qui mesure la valeur ou la richesse créée par une entreprise
- 18 -
1. Cadre théorique et problématique
comme étant assurées par trois systèmes : le système opérant (SO), le système de pilo-
tage (SP) et le système d'information (SI) comme le montre la figure 1.1.
Le système opérant (SO) réagit aux flux des événements quotidiens, qui viennent de
l’e i o e e t d’u e e t ep ise, selo des gles ie d fi ies. Il ep se te des lé-
ments matériels ou immatériels en interaction transformant par un processus des flux
d’e t ées tels que les flux financier, les flux de matière, les flux d’i fo atio e flu de
sortie, et do e ai si des i fo atio s su l’ tat du s st e au SP ia le SI.
Le système de pilotage (SP) pe et d’e gage le p o essus de d isio tout e d fi is-
sa t au p ala le les o je tifs, les it es d’ aluatio et les gles de gestio .
Enfin, le S st e d’I fo atio SI joue un rôle primordial permettant de relier les
deux systèmes précédents en transmettant les directives décidées par le SP au SO. Le SI
renvoie les informations issues du SO permettant ainsi au SP de prendre les bonnes déci-
sions pour un fonctionnement optimal du système global.
- 19 -
1. Cadre théorique et problématique
période ont évoluée e fo tio de la diffusio oissa te de l’i fo ati ue da s les a ti-
it s d’u e o ga isatio .
Ainsi, des auteurs comme (Alter, 1999) d fi isse t u s st e d’i fo atio o e
«u s st e de t avail do t les fo tio s i te es so t li it es à t aite l i fo atio , e
e uta t si t pes d op atio s : saisi , transmettre, stocker, retrouver, manipuler, affi-
he l i fo atio . U s st e d i fo atio p oduit de l i fo atio , assiste ou auto a-
tise le t avail e ut pa d aut es s st es de travail.». Cette définition, est plutôt réduc-
trice du fait qu’elle su e le système d’i fo atio comme étant quasiment un système
informatique.
Les d fi itio s o t p og essi e e t s’ la gi pou t adui e le fait u’u s st e
d’i fo atio a d pass le stade d’outil pou de e i l’ l e t st u tu a t d’u e o ga i-
sation. Ainsi, (Reix, 2004) d fi it u s st e d’i fo atio o e « un ensemble organi-
s de essou es at iel, logi iel, pe so el, do es, p o du es pe etta t d a u i ,
traiter, stocker, communiquer des informations (sous forme de données, textes, images,
sons, etc.) dans les organisations ». Dans cette définition, on voit apparaître une notion
essentielle qui est «la procédure». Celle-ci décrit comment, quand et où l’a teu est sup-
posé utiliser des ressources : matériels, logiciels et do es pou ue l’o ga isatio soit
informée. Cette définition été amplifiée par Morley et al. (Morley, Hughes, Leblanc, &
Hugues, 2007), qui ont clairement fait la distinction entre le s st e d’i fo atio et le
système informatique comme le montre la figure 1.2. En considérant le système
d’i fo atio sous la gouvernance du système de pilotage, supportant la gestion de
l’e t ep ise est suppo t pa les essou es i fo ati ues d’aide à la d isio .
Matériels Logiciels
Processus
Applicatifs
S’appuie sur
- 20 -
1. Cadre théorique et problématique
Processus de pilotage
Processus de mesure
Satisfaction
Exigences
Éléments de
Clients
Clients
Éléments sortie
d’e trée
Processus opérationnel
Processus de support
- 21 -
1. Cadre théorique et problématique
- 22 -
1. Cadre théorique et problématique
Figure 1.4 Méta modèle du processus métier selon (Morley, Hughes, Leblanc, & Hugues, 2007)
- 23 -
1. Cadre théorique et problématique
Dans la littérature, il n'y a pas de vue uniforme sur le nombre de phases du cycle de vie
BPM. Il varie en fonction de la granularité choisie pour l'identification des phases (Gillot,
2008), (Crusson, 2003), (Debauche & Mégard, 2004).
Il est composé principalement de quatre phases comme le montre la figure 1.5 :
1. La phase de modélisation "Process Modeling"
2. La phase d’implémentation "Process Implementation"
3. La phase d’e utio "Process Execution"
4. La phase de pilotage et d’opti isatio "Process Analysis"
Modélisation
Exécution
- 24 -
1. Cadre théorique et problématique
vices (SOA) et les services web (Weerawarana, Curbera, Leymann, Storey, & Ferguson,
2005) est le "Business Process Execution Language" ou appelé aussi BPEL (OASIS
Standard, 2007). En effet, BPEL exprime donc u e s ue e d’ e e ts du Business
Process contrairement aux services web qui fournissent les fonctionnalités du service. Le
modèle de processus exécutable qui en résulte peut-être déployé dans un moteur de pro-
cessus pour son exécution, et cela afin de réaliser l’i te façage a e les diff e ts s s-
t es essai es au fo tio e e t du p o essus et pou ett e e œu e les gles
métier.
2
http://www.w3schools.com/xml/
3
http://www.w3.org/TR/soap12-part1/
- 26 -
1. Cadre théorique et problématique
de l'Internet (cf. figure 1.6). XML est utilisé pour représenter les données, SOAP pour
transporter les données, WSDL pour décrire les services disponibles, et UDDI pour réper-
torier les différents fournisseurs de services et les services disponibles.
4
http://www.w3.org/TR/wsdl/
5
http://www.uddi.org/
- 27 -
1. Cadre théorique et problématique
au lieu de « uoi fai e». Ce ui pe et au s a ios d’e utio de este i pli ites da s
la phase de od lisatio du p o essus et ela e ita t d’ u er explicitement tous
les s a ii d'e utio possi les da s ette phase. Cette app o he passe pa l’utilisatio
d’u e se le de o t ai tes et de gles pou est ei d e les possi ilit s d’e utio
des a ti it s d’u p o essus. Aut e e t dit, tous les hemins d'exécution, qui ne violent
pas les contraintes mise en place sont autorisés, ce qui offre beaucoup plus de chemins
d’e utio possi les et u e fle i ilit des od les o te us. Ces o t ai tes e pla e t,
donc, les connecteurs explicites qui existe t e t e diff e tes a ti it s da s l’app o he
impérative.
Dans les langages déclaratifs tels que ConDec (Pesic & Van der Aalst, 2006), PLM-flow
(Zeng, Flaxer, Chang, & Jeng, 2002), PENELOPE (Goedertier & Vanthienen, 2006), un pro-
cessus est vu comme un ensemble d’ tats et u e se le de o t ai tes qui contrôlent
les t a sitio s d’u tat vers un autre. Plusieurs paradigmes sont utilisés pour représenter
les états et les contraintes tels que : la logique temporelle linéaire, la modélisation basée
sur les règles, etc.
« B doit succéder a A »
A B A B
[{A, B}] [{A}, {A, A}, {A, A, A}, {A, B}, {A, A, B}, …]
(A) Modélisation impérative (B) Modélisation déclarative
Figure 1.7 Modélisation impérative et modélisation déclarative
- 28 -
1. Cadre théorique et problématique
standardisée pour combler le vide existant entre la modélisation des processus métier et
les langages d'exécution des processus métier.
U diag a e BPMN est o pos d’u e se le d’ l e ts g aphi ues ui pe et-
tent de modéliser les activités, les flux, les relations, les données ainsi que leurs interac-
tio s. Il s’a ti ule autou de quatre catégories d’ l e ts o e le o t e la figure 1.8:
Les objets de flux "Flow Objects": ce sont les principaux éléments graphiques
qui permettent de définir le comportement d'un processus métier. Il existe
t ois t pes d’o jets de flu : les activités "Activities" qui correspondent à une ac-
tion qui peut être réalisée par un humain ou une machine. Elles possèdent un
début et une fin et ne peuvent commencer que si les activités qui les précédent
sont terminées. Une activité peut être atomique ou composée. Les évènements
"Events" qui correspondent à une action qui survient durant le processus. Ils
ont en général une cause et une conséquence. Il est ainsi possible de modifier
le d oule e t d’u p o essus lo s u’u énement particulier intervient au
ou s de l’e utio du p o essus. Il e iste at go ies d’ e e ts : D pa t,
Intermédiaires, Arrêt et enfin les passerelles ou les branchements "Gate-
ways" qui correspondent à un branchement dans le processus qui permet de
représenter une action dans l'avancement de ce dernier.
Les objets de connexion "Connecting Objects": ce sont les éléments graphiques
qui permettent de relier les objets de flux les uns aux autres pour représenter
le he i e e t du p o essus. Il e iste t ois so tes de o e teu d’o jets : les
flux de séquence "Sequence flow" qui indiquent l'ordre d'exécution des actions.
Les flux de message "Message flow" qui correspondent à un lien entre deux
processus séparés et enfin, les associations "Association" qui permettent de lier
des données ou des documents aux objets du processus.
- 29 -
1. Cadre théorique et problématique
Tâches Passerelle
Participants
Figure 1.9 Processus de vente aux enchères modélisé par la notation BPMN
- 30 -
1. Cadre théorique et problématique
Nœud de o trôle
Figure 1.10 ‘ep se tatio g aphi ue des p i ipau o epts da s u diag a e d a tivit s.
Nœud de fusio
Nœuds
d’a tio
Nœuds de dé isio
Nœud d’u io et de
bifurcation fusionnés
Nœud de fi de flot
- 31 -
1. Cadre théorique et problématique
logique temporelle linéaire (LTL) (Rozier, 2011), (Hornus & Schnoebelen, 2002) comme le
montre la figure 1.12. Ces modèles peuvent être exécutés par un moteur spécifique.
0..1 2
C A B
Figure 1.12 Un exemple simple d'un modèle CONDEC.
Sortie
Entrée
que BPEL (Matjaz, 2006), (Farahbod, Glässer, & Vajihollahi, 2005) ont pour but de spéci-
fie le d oule e t de l’e se le des a ti it s d’u p o essus. Ces la gages ui so t in-
te p t s pa des oteu s d’e utio ou d'o hest atio , utilise t u e s ialisatio XML
pou d i e l’i pl entation du processus.
Les langages tels que XPDL (The Workflow Management Coalition, 2008) et ebXML
(OASIS, 2003) permettent de modéliser les flu d’i fo atio échangés entre les diffé-
rents acteurs et les activités à accomplir par ces différents acteurs. Tandis que WSFL
(Leymann, 2001), XLANG (Thatte, 2001), et BPEL4WS (OASIS, 2007) permettent
d’o hest e les se i es e is e œu e au sei d’u p o essus. Ces la gages e ploi-
te t les apa it s d’e te sio de WSDL.
Dans la figure 1.15, une chronologie des différents langages permetta t d’exécuter les
processus métier est donnée.
Figure 1.15 Ch o og aphe des diff e ts la gages d e utio des processus métier
- 34 -
1. Cadre théorique et problématique
La force du langage BPEL se manifeste dans la structure de son processus qui est basée
sur un fichier XML composé de trois blocs principaux comme présenté ci-dessus : les ser-
vices web qui participent dans la composition du processus (les partenaires), les variables
manipulées dans le processus et les activités de traitement qui composent le processus
métier.
- 35 -
1. Cadre théorique et problématique
<process name="processName"
xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
targetNamespace="http://example.com"
xmlns:tns="http://example.com"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<variables>
<variable name="x" type="xsd:int"/>
</variables>
<partnerLinks>
<partnerLink name="ResultRequester"
partnerLinkType="tns:requestResultPartnerLinkType"
partnerRole="requestResultAdder"
myRole="requestResultRequester"/>
</partnerLinks>
<faultHandlers> ...</faultHandlers>
<compensationHandlers>...</compensationHandlers>
[Activités]* (atomiques et composées)
</process>
La balise <process> est l'élément racine du fichier BPEL. Elle permet la description
complète du processus. Grâce à l'attribut name, on peut attribuer un nom au processus.
Tandis que la balise <variables> permet de représenter les différentes variables qui
sont utilisées par les activités et qui sont utilisées aussi dans la description des compor-
tements du processus. Autrement dit, elles sont utilisées pour détenir les données rela-
tives à l'état interne du processus, pour stocker, reformater et transformer des messages
avec les services web invoqués. Ces variables peuvent servir aussi à déterminer les types
de messages échangés au sein du processus. La balise <Partnerlinks> permet de
ep se te les pa ti ipa ts ui o t pou ôle d’e ute les a ti it s du p o essus et ela
en définissant les liaisons entre les actions définies dans le fichier WSDL (via partner-
LinkType) au processus BPEL. L'attribut myRole ou partnerRole définit si c'est une
action qui appelle le processus ou si c'est une action appelée par le processus
Il existe deu t pes d’a ti it s: les a ti it s ato i ues ou dites aussi de base et les ac-
tivités composées ou dites aussi structurées. BPEL utilise un ensemble de balises pour
définir des activités atomiques comme par exemple la balise <invoke> qui permet
d’i o ue u e op atio d’u pa te ai e ou u se i e e pa te ai e. Cette i o atio
peut être réalisée de manière synchrone ou asynchrone. La balise <receive> permet
de e e oi u essage d’u e sou e e te e pa te ai e et la alise <reply> permet à
un processus de répondre à un message qu'il aurait reçu par l'activité receive. La balise
<assign> permet de fournir une méthode pour manipuler les données telle que la co-
pie ou l'affectation du contenu entre les variables ou expressions. La balise <validate>
permet de valider la valeur des variables dans leurs schémas de définition et enfin la ba-
lise <Empty> permet d'insérer une instruction non-opérationnelle qui ne fait rien dans
un processus.
Les activités structurées sont des activités composées. Elles décrivent l'ordre des flux
de contrôle et par conséquence décrivent les comportements du processus. Elles peuvent
être formées d'autres activités (atomiques ou structurées) d'une manière récursive.
Trois catégories de flux de contrôle dans les activités structurées : traitements séquen-
tiels, parallèles et sélectifs. Elles utilisent différentes balises tels que la balise <se-
- 36 -
1. Cadre théorique et problématique
quence> qui permet d'exécuter de façon séquentielle une ou plusieurs activités BPEL. La
séquence se termine elle-même lorsque la dernière activité du processus est achevée. La
balise <flow> permet d'exécuter en parallèle plusieurs processus. Ces différents proces-
sus peuvent être indépendants. Aussi, elle ne termine son exécution que si tous les pro-
cessus sont achevés en assurant une synchronisation totale. La balise <If> permet
d'ajouter une logique conditionnelle à la définition du processus BPEL. L'utilisation des
éléments elseif ou else qui sont facultatifs permet la définition d'une ou plusieurs
branches conditionnelles au sein de l'activité If. La balise <switch> décrit
l’a he i e e t o ditio el.
Cela dit, cette traduction automatique demeure imparfaite puisque les aspects gra-
phiques comme les partitions et les sous-partitions des modèles BPMN sont perdus.
D’aut e pa t, le od le BPEL o te u peut essite des ajuste e ts de ode. Pa
e e ple, les a ia les o te ues au sei des a ti it s peu e t essite d’ t e d la es
au préalable comme assignées à des paramètres de services web.
- 37 -
1. Cadre théorique et problématique
- 38 -
1. Cadre théorique et problématique
changement (Schonenberg H. , Mans, Russell, Mulyar, & van der Aalst, 2008),
(Burkhart & Loos, 2010);
L’adaptabilit : la apa it d’u p o essus tie à agi à des exceptions impré-
isi les, ui peu e t su e i g ale e t du a t l’e utio de ses i sta es
(Weber, Wild, Lauer, & Rei, 2006)
La complexité : la capacité à mesurer la difficulté à modéliser, vérifier et déployer
u p o essus tie ai si ue de suppo te les ha ge e ts d a i ues d’u
processus métier en constante évolution (Cardoso J. , 2006), (Latva-Koivisto,
2001);
Le dynamisme : la apa it d’u modèle de processus métier à changer lorsque le
processus évolue. Cette évolution peut être due à l'amélioration des processus, ou
à l'innovation de procédés ou a la réingénierie des processus (Schonenberg H. ,
Mans, Russell, Mulyar, & van der Aalst, 2008);
- 39 -
1. Cadre théorique et problématique
- 40 -
1. Cadre théorique et problématique
dit, ces ressources doivent être rapidement adaptables (Ross, Rhodes, & Hastings, 2008)
d’u e faço agile afi d’attei d e l’o je tif de la a ti it d’u e o ga isatio .
Notons que les o epts d’agilit et de fle i ilit peu e t p êter à confusion en théo-
rie. Cependant, ces deux termes présentent des différences notables. La flexibilité est
se la le à la otio de a ti it i dust ielle, à sa oi la apa it d’u e o ga isatio à
répondre rapidement aux différents besoins de ses clients par une attribution différente
de ses essou es ta dis ue l’agilit ep se te la apa it d’u e o ga isatio à s’adapte
rapidement à son environnement, permettant ainsi de procéder à des changements har-
o ieu et o ti us de l’e t ep ise.
Level".
L'objet du changement qui peut concerner les différents aspects ou dimensions du
processus métier. En effet, le changement peut concerner les activités du proces-
sus (dimension fonctionnelle), les flots de contrôle (dimension comportementale),
- 41 -
1. Cadre théorique et problématique
Schonenberg et al (Schonenberg M. , Mans, Russell, Mulyar, & van der Aalst, 2007),
p opose t u e ta o o ie ui s’i t esse à la fle i ilit du poi t de ue op atio el. Ils
proposent quatre types de flexibilités :
La flexibilité par conception "Flexibility by design" qui est la capacité d'intégrer des
chemins d'exécution alternatifs au moment de la conception de telle sorte que la
- 42 -
1. Cadre théorique et problématique
- 43 -
1. Cadre théorique et problématique
La flexibilité par sélection (a priori) est basée sur des formalismes de modélisation
qui peuvent offrir une capacité à traiter avec le changement de l'environnement
de processus sans aucune évolution dans la définition de ce dernier (Weske,
2001), (Rinderle, Reichert, & Dadam, 2003). Cela signifie que la capacité de flexibi-
lité de ces processus devrait être incorporée dans leurs définitions pendant la
phase de modélisation. de manière à ce que les instances de processus soient tou-
jours conformes à la définition de ces processus.
- 44 -
1. Cadre théorique et problématique
coût. Cette analyse de l'impact du changement des processus métier est réalisée à
travers une approche basée sur une définition de la relation de dépendance tout
en tenant compte des spécificités des modélisations de ces processus.
4. Pour évaluer la qualité des processus métier durant tout leur cycle de vie et plus
particulièrement après chaque changement, nous proposons une adaptation de
certaines caractéristiques de la o e ualitati e ISO/CEI 9 ui se t d’ha itude
à évaluer la qualité des produits logiciels pour les processus métier. Cette adapta-
tion est justifiée par la similitude structurelle existante entre un processus métier
et un produit logiciel.
1.19 Conclusion
Nous avons présenté dans ce chapitre le contexte et le cadre théorique de nos travaux,
nous avons d’a o d soulig le rôle important des processus dans le système
d’i fo atio des o ga isatio s, l’app o he BPM ui pe et de g e es p o essus é-
tier durant leur cycle de vie, et les langages qui permettent de les modéliser et de les exé-
ute es de ie s. Nous a o s aussi is e e e gue l’i po ta e de l’adapta ilit et la
flexibilité des processus métier afin de pouvoir faire face à la nature changeante des diffé-
rents besoins des organisations, toute en présentant les différentes taxonomies de la
flexibilité qui existent dans la littérature. Enfin nous avons présenté la problématique et
les solutions apportées par ces travaux. Dans le chapitre suivant, nous allons présenter un
aperçu des travaux de recherche qui portent sur la gestion et la gouvernance du change-
ment des processus métier.
- 46 -
CHAPITRE
2
Vérification et intégration des
pro essus étier et État de l’art
2. Vérification et intégration des processus métier et État de l’a t
2.1 Introduction
La cohérence et la fiabilité des processus métier est une question primordiale pour
toute o ga isatio da s l’a o plisse e t de ses fo tio alit s. U p o essus peu
fiable ou erroné peut souvent aboutir à un dysfonctionnement dans la gestion du système
d’i fo atio et pa o s ue t, ause des pe tes oûteuses au e t ep ises pou a t
conduire à leur affaiblissement ou, dans des cas extrêmes, à leur faillite. A cet égard, les
organisations doivent accorder à la fois une attention plus grande à la problématique de
ifi atio et de l’i t g atio du ha ge e t des p o essus tie .
Deux axes principaux de recherche ont vu le jour dans ce domaine durant cette der-
nière d e ie, l’u po te su la ifi atio des p o essus tie et l’aut e est relatif à
l’i t g atio du ha ge e t et la gestio d’ olutio de es p o essus.
E effet, la ifi atio des p o essus tie a pou ut de s’assu e ue les a ti it s
du processus s’e ute t e o fo it a e e qui t p u i itiale e t et u’elles
’o t pas i duit des e eu s da s le sultat es o pt et ela, tout e ide tifia t
l’e se le des i oh e es p o o u es pa l’ olutio d’u p o essus tie , et de
proposer ai si des solutio s pou les so e . L’i t g atio et la gestio du ha ge e t
des processus métier a pou o je tif p i ipal d’i o po e les odifi atio s des p o es-
sus sa s pe tu e leu e i o e e t d’e utio at ialis pa les i sta es e ou s
d’e utio .
La suite de ce chapitre est organisée comme suit : Nous invoquons dans la section 2.2
l’i po ta e de la oh e e des od les de p o essus tie da s l’effi a it et la ua-
lité de ces derniers. Dans la section 2. , ous faiso s u tou d’horizon sur les différentes
techniques qui existent dans la littérature et qui permettent de vérifier la cohérence des
modèles de processus métier. Dans la section 2.4, nous commençons par présenter une
typologie des changements des processus métier, une t pologie des p op i t s u’u
changement de processus doit avoir. Enfin nous élaborons une synthèse des travaux de
recherche qui existent dans le do ai e de l’i t g atio et la gestio du ha ge e t des
processus métier.
6
http://www.bizagi.com/
7
http://www.intalio.com/
8
http://fr.bonitasoft.com/
- 49 -
2. Vérification et intégration des processus métier et État de l’a t
Formellement, un automate peut est défini par le tuple A = (Q, Σ, δ, q0, F) où Σ repré-
se te l’alpha et ou l’e se le de a a t es ou s oles , Q ep se te l’e se le fi i
- 51 -
2. Vérification et intégration des processus métier et État de l’a t
9
http://www.w3schools.com/xpath/
10
http://spinroot.com/spin/Man/promela.html
11
http://www.uppaal.com/
- 52 -
2. Vérification et intégration des processus métier et État de l’a t
- 54 -
2. Vérification et intégration des processus métier et État de l’a t
Des travaux comme ceux de Dijkman et al. (Dijkman, Dumas, & Ouyang, 2007), ou en-
core (De Backer & Snoeck, 2008), proposent de fournir une sémantique formelle aux mo-
dèles BPMN en transforment ces derniers en réseaux de Petri et cela tout en identifiant
un certain nombre de composants de cette notation BPMN qui ne peuvent pas avoir une
correspondance dans les réseaux de Petri comme les instances multiples, la gestion des
exceptions pour les cas de sous-processus simultanés, etc. Dans la même optique, les au-
teurs dans (Ramadan, Elmongui, & Hassan, 2011) p opose t d’utilise les seau de Pet i
colorés pour fournir une sémantique formelle aux modèles BPMN au lieu des réseaux de
Pet i lassi ues pou plus d’e p essi it .
YAWL ou "Yet Another Workflow Language" (van der Aalst & ter Hofstede, 2005) est
u la gage à la fois g aphi ue et d’e utio desti à ep se te les p o essus tie
e te da t la s ta e des seau de Pet i pou u’elle suppo te tous les pat o s de flu
de contrôle, tels que la modélisation de l'instance multiple, les tâches composites, le re-
trait des jetons et les transitions connectées directement (Decker, Dijkman, Dumas, &
Luciano, 2008), (Ye, Sun, Wen, & Song, 2008). YAWL hérite des réseaux de Petri les méca-
nismes de vérification du bon fonctionnement des processus. Une nouvelle version de ce
langage est récemment proposée dans Russell & te ofstede, 2009) appelé newYAWL.
Cette nouvelle version tente de couvrir, en plus des patrons de flux de contrôle, tous les
patrons de données "data patterns" et les patrons de ressources "ressource patterns".
D’aut es t a au tels ue eu de (van der Aalst W. , 1999) et de (Langner, Schneider,
& Wehler, 1998) , p opose t u e ifi atio de p o essus tie od lis s à l’aide du
diagramme EPC. Cette approche consiste à transformer des diagrammes EPC en réseaux
de Petri pour vérifier leur cohérence. L'idée de base de ces approches est de restreindre
les classes du modèle EPC en sous-classes pour lesquelles il est plus facile de générer des
réseaux de Petri.
L'importance de la vérification des flux de données dans les workflow a été abordée
dans (Sadiq, Orlowska, & Sadiq, 2004). Les auteurs ont identifié plusieurs erreurs pos-
sibles dans le flux de données par exemple, l'erreur de redondance de données, la lecture
d'un type de donnée non initialisé ou erroné, mais aucun moyen de vérifier ces erreurs
’a t fou i da s e t a ail. Da s (Fan, Dou, & Chen, 2007), un modèle appelé réseau de
Petri double "DWF-nets" est proposé, afin de vérifier à la fois le flux de données et le flux
de contrôle.
En dépit des faiblesses soulevées précédemment, les RdP restent les modèles les plus
utilisés pour décrire et vérifier les processus métier.
2.3.1.3 L’algèbre de processus
Les algèbres de processus sont un formalisme mathématique permettant de modéliser
les systèmes concurrents ou distribués afin de vérifier automatiquement des propriétés
associées à leur comportement. Cette approche se base principalement sur les tech-
niques des algèbres universelles et les théories de la concurrence. A cet égard, de nom-
breux langages d’algèbres de processus ont vu le jour, les plus populaires entre eux sont :
CSP "Communicating sequential processes" (Hoare, 1978) qui est une algèbre
de processus permettant de modéliser l'interaction de systèmes. Il permet de
fournir un mécanisme unifié pour la communication et la synchronisation des
- 56 -
2. Vérification et intégration des processus métier et État de l’a t
fier par la suite les propriétés. En effet, ce travail permet de vérifier plusieurs types de
propriétés spécifiées formellement avec la logique π-calcul en utilisant le model-checker
HAL-Toolkit telles que la propriété de vivacité, équité, fiabilité, disponibilité, sûreté et la
garantie de message "Responsiveness".
Une t adu tio d’u od le de p o essus tie e p i e BPMN e COWS
(Lapadula, Pugliese, & Tiezzi, 2007) est présentée dans (Prandi, Quaglia, & Zannone,
2008). Cet outil inspiré de π-calcul permet un raisonnement quantitatif sur le comporte-
e t des p o essus tie . U tel aiso e e t est o t à l’aide d’u as d’ tude ui
utilise PRISM model checker (Hinton, Kwiatkowska, Norman, & Parker, 2006).
Toutefois, la vérification par π-calcul implique la vérification d’ ui ale e par bi-
simulation. Ce qui implique une grande consommation de temps pour obtenir des résul-
tats, et cela même pour prouver des exigences d'exactitude simples.
Ceci étant, d’aut es app o hes, se basant sur des modèles différents, ont été propo-
sées comme le travail de (Pu, Zhao, Wang, & Qiu, 2006) qui propose μ-BPEL, un nouveau
langage basé sur BPEL et qui définit la sémantique des activités de base et structurées. μ-
BPEL est traduit en automate temporisé TA "Timed Automata", puis vérifié en utilisant
l’outil UPPAAL (Behrmann, David, & Larsen, 2004) permettant ainsi la vérification des
propriétés du réseau de TA.
La plate-forme VERBUS (Fisteus, Fernández, & Kloos, 2004) est une plate-forme mo-
dulai e e te si le ui ’est pas li e à u outil de ifi atio ou à un langage de descrip-
tion de processus particulier. En effet, un modèle formel commun (CMF) est défini et
chaque langage de spécification de processus peut être intégré en définissant sa séman-
tique en termes de CMF, et en implémentant un traducteur associé. Chaque outil de véri-
fication peut être intégré en implémentant un traducteur du CMF en langage d'entrée de
l'outil de vérification.
Malgré le temps que consomme l’app o he de vérification par les modèles formels
dont elle dépend de la complexité des algorithmes de traduction de la définition des pro-
cessus métier en modèles formels et de la complexité des algorithmes de détection des
propriétés à vérifier. Cette approche s’a e avantageuse e ati e d’effi a it
puisqu’elle aug e te la e titude d’u e a se e de dysfonctionnements dans les proces-
sus métier.
- 58 -
2. Vérification et intégration des processus métier et État de l’a t
- 59 -
2. Vérification et intégration des processus métier et État de l’a t
- 60 -
2. Vérification et intégration des processus métier et État de l’a t
En général, changer une instance en cours d'exécution n'est pas suffisant pour résor-
e tous les p o l es e o t s. C’est la st u tu e du p o essus tie elle-même qui
doit être remise en question (Kradolfer & Geppert, 1999), (van der Aalst W. , 2001),
(Reichert, Dadam, & Bauer, 2003). À cet égard, les changements appliqués au niveau du
schéma du processus métier sont nécessaires pour faire face à la nature changeante des
rôles dans les processus métier i duits g ale e t pa l’adaptation aux nouvelles rè-
glementations, etc.
L’ olutio d’u s h a de p o essus tie essite sou e t la p opagatio de es
changements sur le reste des éléments du schéma ainsi que sur ses instances en cours
d’e utio . Aut e e t dit, e t pe de ha ge e t produit un impact global (Nurcan,
2008). La figure 2.4.a, illustre un changement au niveau du schéma du processus métier.
Le schéma S1 est le fruit des changements apportés sur le schéma initial S0 consistant à
ajouter deux activités X et Y.
Ces changements ne peuvent être accomplis avec succès que si les instances en cours
d'exécution sont conformes à la nouvelle version S1 du schéma. Dans notre cas, les ins-
tances I1 et I2 (cf. figure 2.4.a) peuvent migrer vers le nouveau schéma S1 contrairement à
l’i sta e I3 qui a déjà largement progressé dans son exécution. Cette instance doit donc
être réalisée sur la base de la version initiale S0 du schéma.
- 61 -
2. Vérification et intégration des processus métier et État de l’a t
X S1
A X B
A B C Evolution
du schéma
S1
A C
S0 A
+ + C Evolution
du schéma
B
S1
A B C
- 62 -
2. Vérification et intégration des processus métier et État de l’a t
S0
A B Evolution
du schéma
X Y S1
A X Y
S0
A B C D Evolution
du schéma
S1
D C A B
S
to0another B
A + + D Evolution
du schéma
C
S1 B
A + + D
C A
S1 B
A + + D
C
Table 2.2 Opérations complexes de changement.
D'autres patrons de changement sont détaillés dans le travail de (Weber, Reichert, &
Rinderle-Ma, 2008).
- 63 -
2. Vérification et intégration des processus métier et État de l’a t
- 64 -
2. Vérification et intégration des processus métier et État de l’a t
Cake2 (Minor, Schmalen, Koldehoff, & Bergmann, 2007), WASA2 (Weske, 2000),
ADEPT2 (Reichert, Rinderle, Kreher, & Dadam, 2005) sont des outils permettant de pren-
dre en charge ce type de changement ad-hoc comme par exemple l’ajout, la suppression
ou encore le d pla e e t d’u e activité ou d’u f ag e t d’a ti it s au niveau des ins-
ta es d’u p o essus tie .
2.4.4.2 L’approche par dérivation
Dans cette approche, le schéma de processus cible du changement est connu, mais le
problème qui se pose est de migre les i sta es de l’a ie s h a e s le ou eau
schéma. Cela nécessite souvent un modèle de transition appelé également modèle
"bridge".
Des travaux comme ceux de (Kradolfer & Geppert, 1999), (Sadiq & Orlowska, 1999),
(Weske, 2001) offrent quelques solutions à cette problématique en se basant sur
l’approche dite de dérivation.
2.4.4.3 L’approche par héritage
Cette approche exploite le concept d'héritage connu dans la modélisation orientée ob-
jet afin de l'étendre à la définition des modèles de processus métier génériques.
Chiu et al. (Chiu, Li, & Karlapalem, 2001), proposent une méta-modélisation orientée
objet étendue afin de p e d e e o pte la fle i ilit et l’adapta ilit des workflow ainsi
que la gestion des exceptions. Les auteurs Dą o ski, D a ik, Trzaska, & Subieta, 2011)
présentent l'idée d'un système orienté objet de gestion de workflow déclaratifs. Un pro-
tot pe est is e œu e su la ase de ODRA13, qui est un SGBD distribué orienté objet,
et SBQL14 qui est un langage de requêtes conçu et mis e œu e pou ODRA.
Rajabi et al. (Rajabi & Lee, 2010), p opose t d’utilise u seau de Petri colorié orien-
té objet "OOCPN" pour la modélisation et l'analyse du changement des processus métier.
Ils visent à intégrer des processus métier modélisés en utilisant des diagrammes
d’a ti it s UML et les seau de Petri coloriés et cela afin de prendre en considération
les changements dynamiques du processus pendant leurs exécutions.
Des travaux similaires qui utilisent la même approche orientée objet sont proposés par
(van der Aalst W. , 2001), (van der Aalst, Basten, Verbeek, Verkoulen, & Voorhoeve,
1999).
2.4.4.4 L’approche par induction
Le principe de cette approche consiste à extraire le schéma du processus métier par le
"process mining" à pa ti des t a es d’e utio s "traces logs" de ses instances (Herbst,
1999). Le but étant d'adapter ce dernier à l’exécution précédente de ses instances, et cela
à l'aide d'un mécanisme d'apprentissage inductif. Aut e e t dit, il s’agit d’i t g e les
adaptatio s ui o t t appo t es au i sta es, suite pa e e ple à l’o u e e de as
exceptionnels, comme des modifications permanentes au niveau du schéma du proces-
sus.
13
http://code.google.com/p/odra3/
14
http://www.sbql.pl/
- 65 -
2. Vérification et intégration des processus métier et État de l’a t
Des outils tels que ProM (van Dongen, de Medeiros, Verbeek, Weijters, & van der
Aalst, 2005), EMiT (van der Aalst & Van Dongen, 2002), Little Thumb (Weijters & van der
Aalst, 2003), et MinSon (van der Aalst & Song, 2004) permettent une extraction des con-
naissances à partir des jou au d’e utio s des i sta es d’u processus métier "Pro-
cess Event Logs".
2.4.4.5 L’approche par réflexion
Cette approche propose de concevoir des schémas de processus qui ont la capacité de
contrôler et de modifier leur propre comportement, automatiquement ou par l'interven-
tion de l'utilisateur. Cela est réalisé sur la base des "feed-backs" sur les instances comme
décrit dans les travaux de (Borghoff, Bottoni, Mussio, & Pareschi, 1997).
2.4.4.6 L’approche à base de règles
Cette approche propose de modéliser la logique du processus par un ensemble de
règles en utilisant des langages déclaratifs et ela afi d’off i des processus métier
flexibles. L’e utio de ces langages est souvent assu e pa des oteu s d’i f e e de
gles ui d te i e t l’o d e d’e utio des a ti it s e fo tio de l’ aluatio des
conditions. Cela permet une évolution des instances du processus métier basée sur des
événements survenant au cours de leurs exécutions (Klein & Dellarocas, 2000), (Sadiq &
Orlowska, 1999).
Selon plusieurs travaux, (Knolmayer, Endl, & Pfahrer, 2000) et B , E ke t, Păt â ja ,
& Romanenko, 2006), les règles de réaction ECA "Event-Condition-Action" sont les mieux
adaptées pour décrire la logique du processus par un ensemble de règles. Giurca et al.
dans (Giurca, Lukichev, & Wagner, 2006), justifient cela par le fait que le formalisme ECA,
sur lequel se ase t les gles de a tio , pe et de sp ifie le flu de o t ôle d’u
p o essus d’u e a i e fle i le e utilisa t les e e ts.
Une plate-forme appelée AgentWork est proposée par Müller dans (Müller, Greiner, &
Rahm, 2004) où un ensemble de règles ECA qui régissent le fonctionnement des diffé-
rents agents permet la gestion temporelle de Workflow. Le travail de Zeng et al. dans
(Zeng, Ngu, Benatallah, & O'Dell, 2001) proposent par ailleurs de voir le processus
comme un ensemble de tâ hes oo do es e t e elles pa des gles ECA et d’utilise les
agents pour encapsuler les services qui exécutent les tâches du processus. D’aut es tra-
vaux utilise t d’aut es fo alises de gles basés sur des contraintes comme dans
(Rinderle, Reichert, & Dadam, 2004) où les auteurs proposent une approche formelle ba-
sée sur la notion de contraintes de processus appelée "Constraint-Based Flexible business
process management" permettant de démontrer comment la spécification de sélection et
l'ordonnancement des contraintes peut conduire à une plus grande flexibilité dans l'exé-
cution des processus, et cela tout en maintenant un niveau élevé de maîtrise.
DECLARE (Pesic, Schonenberg, & van der Aalst, 2007) est un prototype de WFMS qui
utilise un langage déclaratif de modélisation des processus à base de contraintes formu-
lées en logique temporelle pour le d eloppe e t et l’exécution des modèles de proces-
sus métier.
PLMflow (Zeng, Flaxer, Chang, & Jeng, 2002) est un framework qui fournit un ensemble
de règles d'inférence conçu pour générer et exécuter dynamiquement des workflow. La
définition du processus est spécifiée dans la règle de gestion, qui comprend deux types de
- 66 -
2. Vérification et intégration des processus métier et État de l’a t
règles, les règles en chaînage arrière "backward-chain rules" et les règles en chaînage
avant "forward-chain rules". L’e utio des i sta es de p o essus est guidée par un
moteur de règles non déterministe qui utilise une combinaison de ces règles.
gestion de versions pour les différents schémas du processus métier en représentant les
différents schémas de processus métier et les dépendances.
ADEPTflex (Reichert & Dadam, 1998), (Rinderle, Reichert, & Dadam, 2004) est un mo-
dèle de workflow graphique connu pour son intégration des changements d’u e faço
dynamique et fluide, et ela e du a t l’e utio de ses i sta es sa s pe d e le on-
trôle et la cohérence structurelle de ces instances. Il propose une politique migratoire qui
est liée à la gestion des conflits potentiels qui peuvent être causés par ces changements.
- 68 -
2. Vérification et intégration des processus métier et État de l’a t
2.5 Conclusion
Dans ce chapitre, nous avons vu que la vérification des processus métier a pour but de
o t e ue les a ti it s du p o essus s’e ute t e o fo it à son plan de réalisa-
tio et u’elles ’o t pas i t oduit d’erreurs. Pour cela, plusieurs techniques sont propo-
sées dans la littérature. Généralement, la technique de vérification par réseaux de Petri
est la plus utilisée et cela est dû à la nature de ce formalisme qui est à la fois, formel et
graphique permettant ainsi une représentation g aphi ue a e l’aspe t s a ti ue att i-
bué au comportement du processus modélisé.
Nous a o s aussi is e e e gue l’i po ta e de l’intégration et la gestion des chan-
gements des processus métier en présentant les différentes techniques et approches qui
existent dans la littérature pour faire face à cette problématique. Au préalable de ce tour
d’ho izo , ous a o s d’a o d présenté une typologie des changements des processus
métier, suivie de la typologie des opérations et des propriétés de ces changements.
Dans le chapitre suivant, nous allons présenter le premier axe de notre contribution
qui consiste à vérifier la cohérence des processus métier en utilisant le Model-checking.
Cette même technique est utilisée pour vérifier les règles dites de conformités.
- 69 -
2. Vérification et intégration des processus métier et État de l’a t
- 70 -
CHAPITRE
3
La Vérification des modèles de pro-
cessus métier par le Model Checking
3. La vérification des processus métier par le model checking
3.1 Introduction
Les réseaux de Petri demeurent parmi les formalismes les plus utilisés pour la vérifica-
tion formelle des processus métier. Ce formalisme occupe, en effet, une place prépondé-
rante en dépit de ses limites (cf. chapitre 2), et se trouve être l'outil le plus largement
étudié si l'on considère la diversité des techniques automatiques de vérification qui lui
sont associées. Nous pouvons distinguer trois techniques principales permettent la
preuve formelle des bonnes propriétés d’u od le de système. Ce sont la vérification
basée sur les preuves de théorèmes, la vérification basée sur les équivalences, la vérifica-
tion basée sur le model-checking.
La première approche, basée sur les preuves de théorèmes, a pour principe de poser
un ensemble d'axiomes qui servent à prouver un ensemble d'assertions ou de propriétés
déterminant ainsi la conformité du système. Cette technique n'est que peu automatisée
et nécessite souvent une intervention humaine. Cependant, des outils d'aide à la preuve
existent mais demandent une forte expertise humaine et une disponibilité des ressources
machine puisque ces algorithmes induisent une forte consommation de ressources de
calcul. Toutefois, ce type de vérification est rarement employé, il est utilisé essentielle-
ment dans le domaine des spécifications algébriques et logiques (Pnueli, 1979).
La deuxième approche consiste à trouver une équivalence entre le modèle de descrip-
tio d’u e i pl e tatio d’u s st e et u e sp ifi atio de e s st e. Il s’agit do
d’ide tifie u e elatio de i-similarité entre ces deux modélisations qui sont décrites
par un même formalisme (Milner, 1999). L’ ui ale e des deu od les prouve que
l’i pl e tatio est o fo e à la sp ifi atio . Cette te h i ue a u d faut, qui peut se
résumer dans la consommation conséquente de temps pour obtenir des résultats, et cela,
même pour prouver des exigences d'exactitude simples.
La troisième approche qui représente une des plus puissantes méthodes formelles en
te es d’effi a it et d’auto ati it est le "model-checking" appelée aussi la vérification
sur modèle. Cette méthode représente une technique de vérification automatique des
systèmes dynamiques, permettant de déterminer ainsi si un modèle donné d'un système
satisfait une spécification. Les modèles de système utilisés par les model-checkers sont
généralement des modèles de type états/transitions, tandis que les modèles des proprié-
tés sont généralement des formules de logique temporelle.
En effet, le principe de cette vérification sur modèle consiste à générer tous les états
possi les d’u s st e dans lesquels la propriété à vérifier est testée de façon exhaustive
sur l'ensemble des exécutions possibles du système. Par exemple, pour démontrer l'ab-
sence d'erreurs à l'exécution, on pourra tester l'absence d'états d'erreur dans l'ensemble
des états accessibles du système. Il s'agit alors d'une forme de test exhaustif, mais mené à
l'aide d'algorithmes astucieux permettant d'énumérer tous les états du système sous une
forme symbolique. E e a he, l’i o ie t ajeu de e t pe de ifi atio est la
taille souvent excessive de l'espace d'états (le système de transition) énumérés pour véri-
fier la validité d'une propriété. En effet, elle peut être exponentielle par rapport à la taille
de la description du système ce qui conduit rapidement à un dépassement des capacités
de l'ordinateur en matière de mémoire. Une des causes principales de cette explosion
combinatoire du nombre d'états est le fait que l'exploration est réalisée en prenant en
compte tous les entrelacements possibles d'évènements concurrents.
- 72 -
3. La vérification des processus métier par le model checking
Par conséquent, et en dépit de ces inconvénients qui sont en partie résolus par les tra-
vaux de (Holzmann, 1997), (Burch, Clarke, Mcmillan, Dill, & Hwang, 1990) la vérification
formelle basée sur le model-checking reste le meilleur choix à faire puisque la vérification
est complètement automatique et un contre-exemple est fourni au cas où la propriété
serait violée.
Fort de ce constat, un ensemble de travaux de recherche ont essayé de tirer profit de
l’utilisatio du odel-checking afin de vérifier la validation des processus BPEL, des pro-
cessus workflow et des processus métier. En effet, dans (Fisteus, Fernández, & Kloos,
2004), (Nakajima, 2006), les auteurs proposent une approche permettant la vérification
et la validation d'une orchestration de services web spécifiée avec BPEL pour s'assurer de
sa consistance et d'éviter les changements inattendus. Cette approche permet de vérifier
un ensemble de propriétés génériques, telles que la vivacité et la sûreté, et spécifiques en
utilisant le model-checker SPIN avec son langage d'entrée PROMELA.
Dans (Feja, Speck, & Pulvermüller, 2009), (Speck, Feja, Witt, & Pulvermüller, 2011 ) les
auteu s p opose t l’utilisatio du odel-checking pour vérifier un ensemble de règles
dans les processus métier modélisés par les diagrammes EPC. En effet, dans cette vérifica-
tio l’ensemble des règles est exprimé en CTL (Wolfgang, 1989) à travers une notation
graphique appelée G-CTL "Graphical Computationnal Temporal Logic", tandis que, les dia-
grammes EPC à vérifier sont traduits en structure de kripke afin que les deux soient utili-
sées comme entrée pour le model-checker.
Dans un autre registre, Vaz et Ferreira (Vaz & Ferreira, 2007), (Vaz & Ferreira, 2007)
proposent de vérifier l’e a titude des processus workflow et le comportement des pro-
cessus métier basés sur les services web par le model-checker SPIN. Dans ces travaux, les
auteurs proposent de traduire une collection de patterns de workflow en code Promela.
Cette traduction est illustrée par deux processus métier basés sur les services web.
Dans la continuité de ces travaux, l'approche proposée dans ce chapitre consiste à uti-
liser la technique du model-checking pour vérifier les propriétés de cohérence des pro-
cessus métier modélisés en BPMN. En effet, notre approche permet tout d'abord de tra-
duire un modèle BPMN en modèle Promela. Cette traduction se fait en deux phases. La
première phase, consiste à transformer le modèle BPMN vers une structure de kripke
comme représentation intermédiaire et cela, afin de donner une sémantique formelle à
ces modèles, et par conséque t l’e se le des e utio s de e système. La deuxième
phase consiste à traduire cette structure de kripke vers un code Promela.
En second lieu, nous exprimons en Logique Temporelle Linéaire (LTL) les différentes
propriétés de cohérence des modèles de processus métier et nous utilisons le model-
checker SPIN pour tester si chaque propriété de cohérence est satisfaite par le modèle
Promela du modèle BPMN en question.
Da s le as d’u e po se gati e, SPIN fou it u contre-exemple montrant une
exécution qui ne satisfait pas ces propriétés. De la même manière, cette approche est
utilis e afi de ifie la o fo it des p o essus tie a e l’e se le des gles de
conformité suite à un changement affectant l'un des deux.
La suite de ce chapitre est organisée comme suit : nous commençons par présenter
dans la section 3.2 les notions fondamentales du model-checking ainsi que le principe de
son fonctionnement. Dans la section 3.3, nous présentons le model-checker SPIN qui est
- 73 -
3. La vérification des processus métier par le model checking
3.2 Le model-checking
3.2.1 Principe du model-checking
Le model-checking (Clarke Jr., Grumberg, & Peled, 1999), (Biere, 2008) ou la vérifica-
tion de modèle est reconnu comme étant l'une des méthodes formelles les plus puis-
santes et la plus utilisée. En effet, le model-checking est une méthode de vérification ex-
haustive basée sur des modèles mathématiques permettant l'analyse des systèmes réac-
tifs qui présentent un comportement aléatoire ou probabiliste. Cette vérification utilise
un algorithme qui explore exhaustivement l'ensemble des exécutions possibles du sys-
tème. Le nombre des états générés par ce modèle peut être exponentiel, les outils de
model-checking actuels peuvent énumérer explicitement des espaces d'états contenant
1020 états (Burch, Clarke, Mcmillan, Dill, & Hwang, 1990).
Le principe du model-checking consiste à générer toutes les exécutions possibles d'un
système et de vérifier ses caractéristiques comportementales, en s'assurant que les pro-
priétés spécifiées telles que l'absence de blocage "deadlock" sont vérifiées dans chaque
exécution et donc dans chaque état du modèle.
Pour ce faire, le model-checker prend en entrée une abstraction du comportement du
système réactif ou système de transition et une formule d’u e logi ue te po elle et i-
fie si l’a st a tio satisfait la fo ule cf. figu e . . L’a st a tio du o po te e t du
système peut être exprimée en utilisant des structures de Kripke (Browne, Clarke, &
Grümberg, 1988) ou d'autres modèles tels que les réseaux de Petri, les automates finis,
les automates temporisés, etc. Les formules de logique temporelle peuvent être expri-
mées en utilisant LTL (Rozier, 2011) , en PLTL (Laroussinie & Schnoebelen, 1995), en CTL
(Wolfgang, 1989), en CTL* (Schneider & Prof.Dr Schmid, 1997), ou TCTL (Bel Mokadem,
Bérard, Bouyer, & Laroussinie, 2006), etc. Le système de transition est dit modèle de la
formule, d’où le terme vérification de modèle.
A l'issue de cette vérification, si une propriété n'est pas satisfaite, un contre-exemple
est fourni permettant ainsi d'identifier un cas d'exécution non conforme et ainsi localiser
et corriger la source d'erreur. Ce contre-exemple peut être obtenu dès l'instant où la pro-
priété à vérifier n'est pas satisfaite durant l'exécution, ce qui permet une vérification plus
rapide qu'avec les techniques traditionnelles et cela en plus du fait que celle-ci soit auto-
matique.
- 74 -
3. La vérification des processus métier par le model checking
- 75 -
3. La vérification des processus métier par le model checking
Une exécution de S est une séquence infinie = q0, q1, ...,qn d'états qi ∈ Q tels que q0 ∈
I et pour tout i ∈ , il existe (qi, Ti, qi+1) ∈ pour un certain Ti ∈ T. Un état q ∈ Q est dit
accessible si qi = q pour une certaine exécution = q0, q1, ...,qn de S.
Pour un model-checking on va considérer des structures de kripke , plutôt que des
systèmes de transitions S. En effet, un système très similaire mais pas identique à la no-
tion de système de transition, appelé structure de kripke, est utilisé par le model-checking
pour représenter le comportement d'un système. La différence entre les deux concepts
qui sont similaires réside da s le fait u’u s st e de t a sitio est p ati ue pou odé-
liser des systèmes, tandis que la structure de kripke est plus commode pour définir la lo-
gique temporelle dans le model-checking. De plus, l'ensemble des transitions-actions T
qui existe dans le système de transitions est supprimé comme expliqué ci-après car on ne
s'intéresse qu'à des propriétés sur les suites d'états visitées plus que les transitions-
actions qui se produisent dans ce système, puis u’o attribue des propriétés atomiques
aux états du système.
3.2.2.1 Structure de kripke
Une structure de kripke (Kripke, 1963) est une variante des automates non-
déterministes utilisée dans le model-checking pour représenter le comportement d'un
système. Elle est considérée comme une structure, do t les œuds ep se te t les états
atteignables du système et les arcs les transitions d'état.
La fonction de marquage "Labeling function" marque chaque œud par un ensemble
de propriétés atomiques qui doivent être valides dans l'état correspondant comme le
montre la figure 3.2.
La sémantique de cette structure est basée sur des logiques temporelles pour la plu-
pa t des la gages de sp ifi atio les plus la ge e t utilis s da s le ad e de l’ tude des
systèmes réactifs.
Une structure de kripke sur un ensemble de variables propositionnelles AP est un qua-
druplet = ( , I, , ) tel que :
Q est l'ensemble fini des états.
I est l'ensemble des états initiaux tel que I ⊆ Q.
R ⊆ Q x Q est une relation de transition qui vérifie: q ∈ Q, ∈ Q tel ue , ∈
R.
- 76 -
3. La vérification des processus métier par le model checking
: Q 2AP est une fonction d'étiquetage ou de labellisation des états qui définit
pour chaque état q ∈ Q. l'ensemble (q) de toutes les propositions atomiques qui
sont vraies dans q.
Pour vérifier tous les chemins d'exécutions possibles du système, il est utile de déplier
cette structure afin d'obtenir un arbre infini dont la racine est l'état initial de la structure,
et chaque œud de l'arbre a pour successeurs ceux obtenus par la relation de transition
R.
- 77 -
3. La vérification des processus métier par le model checking
- 78 -
3. La vérification des processus métier par le model checking
- 79 -
3. La vérification des processus métier par le model checking
15
http://spinroot.com/spin/Man/Quick.html
- 80 -
3. La vérification des processus métier par le model checking
contre-exemples sont censés permettre à l'utilisateur de modifier par la suite son modèle
ou la propriété si elle a été mal exprimée, afin de corriger les erreurs éventuelles.
Avant de détailler notre approche qui consiste à vérifier un des aspects de la cohé-
rence des processus métier qui se résume en la détection de l’a se e des e eu s st uc-
tu elles da s des od les de p o essus tie à l’aide de SPIN, ous allo s o e er
par présenter en détail ces erreurs qui peuvent causer des incohérences fonctionnelles
comme expliqué brièvement dans le chapitre 2.
- 81 -
3. La vérification des processus métier par le model checking
cage est certaine, sinon il peut se produire si la branche menant à la boucle est
choisie.
Sources multiples "Multiple sources": comme indiqué dans la figure.3.4.b, les
sources multiples se produisent lorsque deux sources différentes mènent aux
points d'entrée d’u e passerelle AND-Join. En supposant qu'aucun des œuds
sou es ’est une passerelle AND-Join en elle-même, on peut observer que les
sources multiples peuvent se produire lorsque l'une des structures de proces-
sus est la suivante:
o L'une des deux sources est une passerelle XOR-split.
o Un processus avec multiples événements de début qui seront synchro-
nisés plus tard par une passerelle AND-Join. D'où on peut en déduire
qu'il existe une accessibilité entre deux ou plusieurs sources pour le
œud AND-join.
o Une structure impropre comme le montre la figure 3.4.d, représente le
fait d’u e passe elle AND-Join reçoit comme entrée un chemin qui
passe par une passerelle XOR-Split
- 82 -
3. La vérification des processus métier par le model checking
Figure 3.5 Vérification des modèles de processus métier basée sur le model-checking.
Plusieurs propriétés LTL peuvent être définies simultanément pour une structure de
kripke. Les étapes de vérification sont détaillées comme suit :
- 83 -
3. La vérification des processus métier par le model checking
- 84 -
3. La vérification des processus métier par le model checking
- 85 -
3. La vérification des processus métier par le model checking
◊□ϕ → □◊
Si u e a ti it essaie de s’e uter à l’i fi i, alo s elle sera toujours dans un état d'exé-
cution. Cela peut être simplifié par la formule ¬ ◊ □ φ (c'est-à-dire qu'elle ne réussira ja-
mais à s'exécuter pour toujours). Le contre-exemple de ces propriétés est une exécution
infinie selon laquelle le comportement attendu ne se produit pas (c'est-à-dire le proces-
sus ne se termine pas).
3.5.2.3 Détection des terminaisons multiples
La terminaison multiple est une situation où il existe un AND-Split avant une passerelle
XOR-Join comme vu précédemment. La détection de ce cas est basée sur la vérification de
la propriété de sûreté « quelque chose de mauvais n'arrive jamais ». Il peut être vérifié
par la formule LTL suivante:
□¬ ◊ φ ○ → Final)
Un contre-exemple de ces propriétés est une exécution finie qui conduit à un compor-
tement inattendu.
- 87 -
3. La vérification des processus métier par le model checking
Dans ce processus, le vendeur reçoit son bulletin de paie à la fin de chaque mois. Il ob-
tie t u o us à ha ue fois u’il ussit à e d e plus de vingt voitures durant le mois
(en plus de son salaire régulier).
Le lo age ou l’i passe da s e p o essus peut se p odui e e tuelle e t lo s ue le
e deu e d oi s de i gt oitu es pa ois .à.d. le e deu ’o tie t pas de o us.
Dans ce cas, la passerelle AND-Join reçoit une seule séquence qui est traversée par une
des deu a ti it s .à.d. l’a ti it « obtenir le bulletin de paie » et pas l’a ti it « obtenir
un bonus » ce qui provoque une situation de blocage comme décrit dans la section 4.
L'absence de blocages et de boucles infinies dans SPIN est détectée par la vérification
de l’a se e d’ tats i alides "invalid endstates" et l'absence de cycle de non-progression
"non-progress cycle", respectivement.
- 89 -
3. La vérification des processus métier par le model checking
proctype sellCars(){
chan cS1[2]=[1] of {int};
int x, choice, msgs[2];
cS1[0]= cS[1]; /* send to Get Bonus */
cS1[1]= cS[2]; /* send to Get Paycheck */
R: cS[0]?x; /* receive from start event */
/* Choice of a non-deterministic manner */
if
::choice=0 /* Less that 2O cars */
::choice=1 /* More that 20 cars */
fi;
msgs[0]=1;
msgs[1]= choice;
ORSplit(cS1,msgs,cS1, msgs);
goto R
}
L a tivit Obtenir un bonus : comme mentionné ci-dessus, cette activité est choisie de
manière non-déterministe sans perte de généralité. Elle peut être traduite en processus
PROMELA comme souligné dans le Listing 3.2 :
Listing 3.2 T adu tio de l a tivit Obtenir un bonus en processus Promela.
proctype GetBonus(){
int x;
cS[1]?x; /* To receive from Sell Cars */
cS[3]!1; /* To send to Pay Bills */
}
proctype GetPayCheck(){
int x;
cS[2]?x; /* To receive from Sell Cars */
cS[4]!1; /* To send to Pay Bills */
}
- 90 -
3. La vérification des processus métier par le model checking
Cette activité peut être traduite par le processus PROMELA comme le montre le Listing
3.4 :
Listing 3.4 T adu tio de l a tivit ulleti de paie e p o essus P o ela.
proctype PayBills(){
chan cS2[2]=[1] of {int};
int msgs[2];
cS2[0]= cS[3]; /* receive from GetBonus */
cS2[1]= cS[4]; /* receive from GetPaycheck */
T: ANDJoin(cS2, msgs); /* To receive from Get Bonus and Get PayCheck */
cS[5]!1; /* send to end event */
goto T;
}
16
http://code.google.com/p/jspin/
17
http://www.banque-credit.org/pages/pilier-de-bale2.html
- 91 -
3. La vérification des processus métier par le model checking
Étant donné le grand nombre de règles et leurs fréquences de changement, une vérifi-
cation manuelle de ces règles représentera une tâche assez onéreuse en matière de
te ps et d’effo t. Il convient donc de mettre en place des mécanismes de vérification
automatiques de la conformité par les entreprises afin de gagner en gain de productivité.
Différentes approches ont été proposées pour permettre une telle vérification, comme
dans (Goedertier & Vanthienen, 2006), où les auteurs proposent une approche pour ga-
rantir la conformité des processus métier par le design, en introduisant PENELOPE comme
- 92 -
3. La vérification des processus métier par le model checking
étant un langage déclaratif qui permet de capturer les obligations et les autorisations im-
posées par les politiques commerciales ( séquençage et contraintes entre activités) et
plus tard, de générer automatiquement des modèles de processus métier qui sont par
leur conception , conforme avec ces politiques.
Dans (Ghose & Koliadis, 2007), une approche pour vérifier la conformité des modèles
de processus métier et la résolution des violations a été introduite. Le document définit
un réseau sémantique de processus (SPN), où chaque activité est annotée avec des prédi-
cats pe etta t ai si u e ifi atio de l’e se le des règles. Dans (Liu, Müller, & Xu,
2007), une approche basée sur le model-checking a été proposée pour vérifier la confor-
mité des modèles de processus métier défini en BPEL avec un ensemble de contraintes
définies dans un langage de spécification de propriétés (BPSL) qui est converti par la suite
en LTL.
Une autre approche (Awad, Decker, & Weske, 2008) est capable de vérifier les règles
de conformité exprimées en PLTL "Past linear time temporal logic" plutôt que LTL pour
plus expressivité à l’aide d’un langage de requête appelé BPMN-Q (Awad, 2007).
Dans notre approche (Kherbouche, Ahmad, & Basson, 2013), la même démarche pro-
posée dans ce chapitre permettant la vérification de la cohérence des processus métier
exprimés en BPMN est adoptée pour vérifier la conformité de ces modèles. À cet effet, et
en premier lieu, les modèles de processus BPMN sont mappés en structures de kripke
pour exprimer leur comportement comme détaillé précédemment. Les règles de confor-
mité sont exprimées en formules LTL à l'aide d’u e notation graphique, permettant à la
fois d’obtenir le même niveau d'abstraction que les modèles de processus métier mais
aussi d’avoir une interface intermédiaire entre les règles de conformité et les formules
LTL exprimées dans une notation particulière pour un outil donné comme jSpin, EpiSpin,
etc (cf. Sous-section 7.2).
Cette technique permet aux experts de vérifier facilement et rapidement les règles de
conformité après chaque changement. Notre approche n'est pas limitée aux processus
définis en BPMN mais elle peut être appliquée à tout langage graphique permettant la
définition des processus métier o e le diag a e d’a ti it s UML, le diag a e EPC,
etc.
- 93 -
3. La vérification des processus métier par le model checking
˅
Prop. F Prop. Prop. 1 X Prop. 2 Prop. 1 XOR Prop. 2
˅
Prop. 1 Prop. 2 Prop. 1 U Prop. 2 Prop. 1 → Prop. 2 Prop. 1 Prop. 2
˅
! Prop. Prop. Prop. 1 ↔ Prop. 2 Prop. 1 Prop. 2
˅
Prop. 1 ʌ Prop. 2 (Prop. 1 Prop. 2)
- 94 -
3. La vérification des processus métier par le model checking
matiquement.
R3: après que la demande de remboursement soit approuvée, l'argent est transfé-
ré au compte bancaire de l'employé; autrement, une notification de rejet est en-
voyée par e-mail à l'employé.
Le fichier « Expense_Reimbursement_Process.pml » comme détaillé dans le Listing 3.6
représente le modèle Promela complet qui contient la description détaillée du processus
de remboursement des frais de fonctionnement.
Listing 3.6 Le fichier Expense_Reimbursement_Process.pml
Les figures 3.10, 3.11 et figure 3.12, représentent respectivement la formalisation des
règles de conformité R1, R2, R3 exprimées en G-LTL ainsi que les formules LTL correspon-
dantes générées et enregistrées dans le fichier « Expense_Reimbursement_CRules.prp ».
- 96 -
3. La vérification des processus métier par le model checking
Les deux fichiers cités ci-dessus sont fournis comme entrée pour SPIN model-checker,
la figure 3.13 représente les résultats de la vérification de ce processus par jSpin.
3.8 Conclusion
Les modèles de processus métier sont généralement constitués d'un certain nombre
d'a ti it s i te d pe da tes ui so t d plo es pou attei d e les o je tifs tie s d’u e
entreprise. L'exactitude de ces modèles de processus métier est essentielle pour le bon
- 97 -
3. La vérification des processus métier par le model checking
fonctionnement de l’e t ep ise. Pour cette raison, les éventuelles erreurs telles que les
erreurs structurelles dans les spécifications doivent être détectées et corrigées le plus tôt
possible, et cela même lors de la phase de conception.
Dans ce chapitre, nous avons présenté une méthode de validation des modèles de
processus métier basée sur la technique de model-checking. En effet, nous avons proposé
une approche pour la vérification de certaines propriétés de cohérence des modèles de
processus métier à l'aide du model-checker SPIN.
Tout d'abord, nous avons décrit comment traduire n'importe quel modèle de proces-
sus métier vers une structure de kripke pour exprimer son comportement, nous avons
ensuite, étudié certaines propriétés de cohérence des modèles de processus métier et
présenté la traduction de ces propriétés en formules LTL et cela afin de permettre au mo-
del-checking de vérifier si l'abstraction donnée par cette structure de kripke satisfait ou
non les différentes formules et par conséquent de d te te d’ e tuelles e eu s st u tu-
relles.
Cette approche a été implémentée et validé par un modèle vérifiable par SPIN. Ce mo-
dèle, devant être décrit en langage Promela. Les simulations faites sur SPIN en testant les
propriétés évoquées sur différents modèles de processus métier ont montré l'efficacité
de cette méthode de vérification des modèles. En particulier, la notion du contre-exemple
généré par SPIN est d'une grande importance vue qu'elle nous aide à trouver rapidement
la cause de l'erreur et par la suite la corriger.
Dans la même démarche, cette approche à été utilisée pour vérifier les règles de con-
formité qui sont essentielles pour gouverner et contrôler les comportements métiers et
l’i fo atio au sei d’u e o ga isatio . Les modèles de processus métier sont mappés
en structures de kripke pour exprimer leur comportement tandis que les règles de con-
formité sont exprimées à l’aide d’u outil u’o a proposé appelé G-LTL. Cet outil a la ver-
tu d’off i u o e si ple pou fo ule les gles à ifie , sa s a oi o aissa e
des différentes notations LTL pour chaque outil de model-checker. Il permet également
d’o te i des gles da s le e i eau d’a st a tio ue les od les de p o essus
métier.
Dans le chapitre suivant, nous allons présenter le deuxième axe de notre contribution
qui consiste à a al se l’i pa t du ha ge e t sur les modèles de processus métier.
- 98 -
3. La vérification des processus métier par le model checking
- 99 -
CHAPITRE
4
Analyse a priori de l’I pa t du
changement des modèles de
processus métier
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
4.1 Introduction
Pour mener à bien leurs missions dans un contexte fortement concurrentiel et afin de
faire face aux évolutions du marché, les entreprises ont, de plus en plus, besoin de gérer
des p o essus o ple es do t elles doi e t assu e la fia ilit et de s’adapte au han-
gements.
L’o igine de cette dynamique vient essentiellement des changements fréquents des
gle e tatio s e t ieu es ue l’o ga isatio doit espe te et de eu de la politi ue
intérieure de cette organisation. Cela rend les éléments de processus susceptibles
d’ olue (Goedertier & Vanthienen, 2006). Des changements doivent donc pouvoir af-
fe te u ou plusieu s l e ts d’u p o essus sa s alt e la sta ilit des aut es lé-
ments.
Cependant, du fait des dépendances fortes des diverses entités qui constituent un pro-
cessus métier, tout changement affectant une entité de ce processus a de fortes chances
de provoquer des effets de bord concernant les autres entités. Il est donc nécessaire que
tout changement d'un processus métier soit accompagné d'une analyse de son impact, ce
qui permettra de mieux mesurer ses effets et surtout ses effets indésirables générale-
ment appelés effets de bord ou "Side effects".
L’u des aspe ts p i ipau de l’a al se de l’i pa t du ha ge e t est l’aspe t struc-
tu el. E d’aut es te es, et i pa t o e e les effets de ague ou "Ripple effect" as-
socié à la modification d'un processus. En effet, toute opération de changement d'un pro-
cessus qu'elle soit un simple renommage d'une activité ou le remplacement d'un frag-
ment du modèle de processus par un autre peut engendrer des effets qui affectent une
grande partie voir la totalité de la structure du processus.
Il est do p i o dial de ett e e œu e des a is es d’a al se a priori permet-
ta t de ieu o p e d e et e e la p opagatio de l’i pa t du ha ge e t des pro-
cessus métier afi d’ ite des situatio s i o t ôl es survenant généralement après le
changement et de conserver ainsi la cohérence du processus.
La compréhension du processus métier est donc d’u e essit u iale pou toute
ise e œu e de ha ge e t. La difficulté de compréhension est liée au nombre très
i po ta t d’interconnexions verticales (inter-couches) et horizontales (intra-couches)
entre les différentes entités du processus métier. Le terme couche désigne un niveau
d'abstraction donné. Par exemple, une modélisation d'un processus par la notation BPMN
ou EPC appartient à une couche plus abstraite que celle associée au déploiement de ce
processus en utilisant le langage BPEL.
L’a al se du ha ge e t et de la p opagatio de so i pa t peut do essite u e
description exhaustive des constituants du processus métier et de leurs interdépen-
dances. Elle nécessite également l’e iste e d’u f e tiel e ploitable de façon auto-
matique (une base de connaissances) et servant au stockage et à la manipulation des
données et des éléments constituant le processus.
Dans ce chapitre, nous présentons avec plus de détails les résultats de nos travaux
o e a t l’a al se de l’i pa t du ha ge e t des processus métier avec un intérêt
particulier pour les relations de dépendance inter-couches et intra-couches. Cela nous a
- 101 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
18
Du a t la phase de o eptio et a a t la phase d’e utio des processus métier
- 102 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
tème (Dai & Covvey, 2005). Le processus qui a pour but d’a oît e la p ise de o s ie e
des modeleurs afin d'éviter les effets de bord (Arnold & Bohner, 1993) et/ou d’estimer les
effets de vague (Bohner S. A., 1996) du changement concerné est appelé analyse de l'im-
pact du changement.
"Ripple effect" se manifestant par une propagation des effets de tout changement aussi
minime soit-il à un tr s g a d o e d’entités. Afi d’a al se es effets, l’a al se de
l’i pa t du changement utilise généralement deu te h i ues ui so t l’a al se des dé-
pendances et d'analyse de la traçabilité.
L’a al se de d pe da e fou it u e se le d’outils pe etta t de d te te et
d’a al se les différentes relations de dépendance dans un système. Cela peut com-
prendre les dépendances de données qui représentent les relations entre les instructions
de programme qui définissent ou utilisent des données. Autrement dit, une dépendance
de données existe quand une déclaration fournit une valeur utilisée par une autre décla-
ration dans un programme. Les dépendances de contrôle sont les relations entre les états
du programme qui contrôlent son exécution, et enfin les dépendances des composants
qui se réfèrent aux relations générales entre les composants du code-source, par
exemple, packages, modules, fichiers, etc.
L’analyse de traçabilité est généralement un travail ui pe et d’ ta li u lie entre
l’e i o e e t du s st e et sa do u e tatio ui o tie e t des i eau a i s
d'information sur ce système. Il met l'accent sur les interconnexions entre le code source,
les tests, les documents de conception et les exigences, etc.
Cependant, bien que l'analyse de dépendance (Ajila, 1995) , (Deruelle, Bouneffa,
Melab, Basson, & Goncalves, 2000), (Fisler, Krishnamurthi, Meyerovich, & Tschantz,
2005), (Ryder & Tip, 2001) et l’analyse de traçabilité (Pfleeger & Bohner, 1990), (Arango,
Schoen, & Pettengill, 1993), (Baniassad & Clarke, 2004), (Knethen, 2001), (Marcus &
Maletic, 2003) puissent être utilisées séparément, elles peuvent également être utilisées
conjointement comme proposé dans (Lindvall & Sandahl, 1998).
- 104 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
sur l'ensemble du modèle de processus métier et ses instances et peuvent être propagés
d’u e a i e horizontale (intra-couche) et verticale (inter-couches). Par conséquent,
une analyse a priori de cette variante est donc primordiale pour maintenir la cohérence
des modèles de processus métier obtenus après ce changement.
Cette a al se de l’i pa t du ha ge e t des processus métier vise à déterminer les
éléments du modèle qui sont susceptibles d’être impactés directement ou indirectement
par ce changement. Elle peut être résumée dans le méta modèle de la figure 4.1 sous la
fo e d’u diag a e de lasses.
En effet, un changement est o sid o e u e e tit ui s’appli ue au i eau du
schéma du processus métier, ou au niveau des instances. Un changement cause différents
t pes d’i pa t et essite u e a al se qui consiste à les décrire ou à les définir.
Comme tout système, un p o essus tie est o pos de diff e ts t pes d’ l e ts
ou entités en interaction les uns avec les autres. Autrement dit, les entités sont interdé-
pendantes à travers des relations directes ou indirectes. L'une des relations les plus cou-
ramment identifiées o e ta t u fil o du teu da s le p o essus d’a al se de
l’i pa t est la elatio g i ue dite de d pe da e. E effet, u e telle relation permet
de dire : si u e e tit B d pe d d u e e tit A, le ha ge e t de A au a u i pa t su B.
Notre travail (Kherbouche, Bouneffa, Ahmad, & Basson, 2013), (Kherbouche O. M.,
Ahmad, Bouneffa, & Basson, 2013) consiste à traiter l'analyse de l'impact du changement
des processus métier à travers une approche basée sur une définition de la relation de
dépendance tenant compte des spécificités de modélisation de ces processus.
L'approche proposée permet non seulement d'analyser les relations de dépendance
qui existent entre la partie changée et les autres parties potentiellement affectées au sein
du modèle de processus métier p opagatio d’i pa t horizontal), mais aussi d'analyser
les relations entre ces modèles de processus métier et les services associés (propagation
d’i pa t vertical).
- 105 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 106 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
La relation intra-processus se réfère aux relations existant entre des activités apparte-
a tàu e p o essus. Pa e e ple, da s le p o essus lie t l’ e e t « Envoi de
la demande de crédits » d pe d de l’a h e e t de l’a ti it « Demande de crédits ».
La relation inter-processus est la relation de dépendance entre des processus diffé-
e ts. E d’aut es te es, elle d sig e u e elatio de d pe da e e t e des a ti it s
appartenant à des processus différents. Dans notre scénario, cela se manifeste par les
échanges de messages entre les deux processus (cf. figure 4.2).
Les relations de dépendance que nous avons mises en évidence ci-dessus sont appe-
l es d pe da es d’a ti it s ou d pe da es de outage. Elles t aduise t l’o d e d'e u-
tio des diff e tes a ti it s d’u p o essus tie . Ces o d es d'e utio so t définis
par les concepteurs et les experts métiers. Ils sont basés sur les exigences techniques, les
réglementations juridiques, ou les politiques de gestion. Par exemple, si deux activités
sont exécutées de façon séquentielle, cela signifie que l'achèveme t de l’e utio de la
première activité est une pré- o ditio pou l’e utio de la se o de.
Il existe également un autre type de relations de dépendance appelée dépendance de
do es. C’est le as, pa e e ple, de la elatio e ista t e t e l’a ti it « Demande de
crédits » et l’activité « Créer des groupes ». En effet, cette activité dépend de la seconde
du fait u’elle lui fou it des données concernant le client qui effectue la demande du
crédit. Il est aussi intéressant de constater dans certains cas que les dépendances de don-
es e o espo de t pas toujou s au d pe da es d’a ti it s. Aut e e t dit, le flu
de données peut ne pas correspondre à l'ordre d'exécution des différentes activités du
p o essus. Il est do essai e d’a al se la d pe dance de données séparément de la
d pe da e d’a ti it s.
Le scénario de demande de crédits (cf. figure 4.2) ne montre pas la totalité des dépen-
dances qui peuvent exister entre les différents éléments qui constituent un modèle de
processus métier. En effet, il faut gale e t p e d e e o pte d’aut es t pes de dé-
pendance qui peuvent exister entre les différentes entités formant un modèle de proces-
sus métier tels que les rôles, les acteurs, les ressources et les règles, mais aussi les dépen-
dances qui peuvent exister entre les processus et les services associés.
- 107 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
un arc (n1, n2) représente le fait que n2 est le su esseu di e t du œud 1 et par
conséquent n1 est le prédécesseur de n2.
4) La dépendance indirecte: il s'agit d'une dépendance d'une entité envers une autre
par transitivité. Il met en évidence un ensemble de flux de contrôle intermédiaire
qui peut exister entre deux entités. C-à-d s’il e iste u e se le de elatio s de
dépendance directes R entre les activités {a1, a2,…, an} ∈ A tel que : (a1 R a2,…, an-1
R an alors a1 R an).
Formalisatio de la d pe da e d a tivit s :
U e d pe da e d’a ti it s peut t e d fi ie o e suit :
A = ₯, )
Sur un ensemble d'activités A = {a1, …, an} et un ensemble de flux de contrôle T= {t1,..,
tn}.
₯ a = ₯i a ∪ ₯o (a) avec a ∈ A
₯o a ep se te l’e se le des a ti it s ai ∈ A ui su de t à l’a ti it a o ote-
ra cela par ai a et do t l’e utio d pe d a fortiori de a. C’est u e elatio "one-to-
many", où plusieu s a ti it s d pe de t d’u e seule aut e a ti it . De la e a i e,
₯i a ep se te l’e se le des a ti it s ai ∈ A ui p de t l’a ti it a o ote a ela
par a ai . E d’aut es te es l’e utio de a dépend de celles des activités apparte-
- 108 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
dcx, dcy ∈ DC
Où, DC= {dc1, dc2, ..., dcn} est l’e se le de toutes les o e io s de do es tel ue :
dcx = {d, aj, pars, écriture}
dcy = {d, ai, part, lecture}
Où, d ∈ D, part ∈ InPARs (ai), pars ∈ OutPARs (aj) et aj précède ai dans le schéma du
processus métier.
- 109 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
i est l’e se le des flu de o t ôle ti∈T ou arcs reliant chaque rôle de Ϭi(r) à r. Au-
t e e t dit, l’e se le des a s e t a ts de r. o est l’e se le des flu de o t ôle ti∈
T, reliant le rôle r à tout rôle appartenant à o. Ce sont donc les arcs sortant de r.
4.6.2.2 Relations de dépendance inter-couches
Comme la couche des processus métier, la couche des services se o pose d’un en-
semble de services qui interagissent les uns avec les autres par des relations directes ou
indirectes et qui sont également en constante évolution (Wang & Capretz, 2009). Cepen-
dant, il existe à côté de cela, une relation de couplage entre les services et les processus
métier, comme indiqué dans la figure 4.2, que nous avons appelé une relation de dépen-
dance inter-couche.
En effet, la corrélation, les entrées et les sorties des services web sont liées par l'or-
chestration de ces processus à travers des normes tels que WS-BPEL. Par conséquent, un
processus métier peut faire appel à plusieurs services. Cela signifie que chaque fois qu'un
changement se produit dans le processus métier, ce dernier peut affecter les services qui
lui sont associés et vice-versa. Ceci peut être justifié par le fait u’u e activité dans le mo-
dèle de processus métier peut interagir avec un service d’u e faço unidirectionnelle ou
bidirectionnelle via l'invocation de l'un de ses opérations.
Un service est généralement défini comme un ensemble d'opérations O = {o 1,…, on} où
chaque opération oi ∈ O est associée à un ensemble de messages. T ⊆ S × S représente
- 110 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
l’e se le des elatio s e t e ces opérations. Chaque transition t = (oi, oj) ∈ T (oi, oj ∈ O)
désigne l'invocation de l'opération oj par l’op atio oi.
Nous pouvons définir formellement la relation de dépendance entre la couche des
processus métier et la couche de service par : ȡic = (As, ᴦ) sur un ensemble d'activités A =
{a1 ... an} et un ensemble de services web S = {s1 ... sn} où:
As représente l’ensemble d'activités qui fait appel au même service si ∈ S (noté comme
suit: ai ⇝ si) et ᴦ ⊆ A × S est l'ensemble des arcs reliant les œuds qui représentent la rela-
tion de dépendance entre chaque activité ai ∈ S et le service invoqué si ∈ S.
- 111 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
4.7.1 La métrique P
La métrique P, représente la priorité d'une activité ai ∈ A (High, Medium ou Low) dans
le flux d'exécution d’u processus métier, qui est définie généralement par les modeleurs
durant la phase de conception. Elle peut être calculée en se basant sur les valeurs qui cor-
respondent aux priorités assignées comme par exemple : si une activité A doit s’e ute
avec une priorité Haute alors P (A) = 0,75 (75/100).
4.7.2 La métrique E
La métrique E, représente la fréquence d'exécution d'une activité ai ∈ A dans chaque
chemin d'exécution π d’u e i sta e Ix avec x ∈ {1 ... n} du processus métier p. Elle peut
être calculée mathématiquement à partir des journaux d'exécution "Process events logs"
comme suivant :
n n
E(ai)= ΣI=0 (Σπ=0 ex(ai))
En effet, les journaux d'exécution d’u p o essus tie peuvent être exploités pour
découvrir le nombre de fois où chaque activité a été exécutée ex(ai) dans chaque chemin
d'exécution π d’u e i sta e I. Par exemple, si nous observons que le chemin d'exécution
qui mène à l'activité A et B a été exécuté plutôt que celui menant à l'activité C dans les
différentes instances, cela implique que la valeur de E(A) et E(B) doit être supérieur à celle
de E(C).
4.7.3 La métrique F
Cette métrique se réfère aux fréquences d'invocation notée F d'une activité ai ∈ A
dans un modèle de processus métier p. Par exemple, si l'activité B est appelée dans
chaque chemin d'exécution π possible de l'activité A, alors la probabilité que A soit impac-
tés par un changement dans B, devient élevée. Toutefois, si B est appelée dans un chemin
d'exécution pa i d’aut es possibles de l'activité A, alors la probabilité de A étant impac-
tée par un changement dans B, devient beaucoup plus faible.
4.7.4 La métrique ND
La profondeur imbriquée ND est une métrique qui représente la position de chaque
activité dans le chemin d'exécution d’u processus métier. En d'autres termes, l'activité
qui s’e ute en amont dans le he i d’e utio du processus métier reçoit un coeffi-
cient plus élevé, tandis que, l'activité qui se produit plus tard dans le chemin de processus
métier reçoit un coefficient moins élevé.
Le degré de l'impact de chaque élément affecté par un changement peut être calculé
alors comme la somme de tous les IWF menant de l'entité changée à l’entité susceptible
d’ t e touchée. Par conséquent, nous disons qu'un chemin peut être marqué en rouge
lorsque le degré de l'impact est élevé, par exemple entre 15 et 20. On dit qu'un chemin
peut être marqué comme orange lorsque le degré de l'impact est moyen, par exemple
entre 10 et 15 et que le chemin peut être marqué comme vert lorsque le degré de l'im-
pact est faible, par exemple entre 1 et 10. Ces valeurs de seuils peuvent être définies par
les modeleurs et les experts métiers on se basant sur des études empiriques.
- 112 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
19
Une ontologie, en informatique, est un ensemble structuré de savoirs dans un domaine de connaissance particulier
20
www.omg.org/spec/BPMN/1.1/PDF.
- 113 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
Class: BPMN_ELEMENT
Label: BPMN element
Description: Base element
BPMN_ELEMENT GRAPHICAL_ELEMENT SUPPORTING_ELEMENT IMPACT_ANALYSIS
21
http://www.cs.ox.ac.uk/ian.horrocks/Seminars/download/Horrocks_Ian_pt1.pdf
22
http://www.w3.org/standards/techs/owl#w3c_all
- 114 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
GRAPHICAL_ELEMENT SUPPORTING_ELEMENT
GRAPHICAL_ELEMENT IMPACT_ANALYSIS
SUPPORTING_ELEMENT IMPACT_ANALYSIS
Listing 4.2 Classe IMPACT_ANALYSIS.
Class: IMPACT_ANALYSIS
Label: Impact analysis
Description: Impact analysis
IMPACT_ANALYSIS DEPENDENCY_RELATIONSHIPS
Listing 4.3 Classe DEPENDENCY_RELATIONSHIPS.
Class: DEPENDENCY_RELATIONSHIPS
Label: Dependency analysis
Description: Dependency relationship defines the existing dependencies concerning
activities and data
DEPENDENCY_RELATIONSHIPS ACTIVITY_DEPENDENCY DATA_DEPENDENCY
Listing 4.4 Classe ACTIVITY_DEPENDENCY.
Class: ACTIVITY_DEPENDENCY
Label: Impact analysis
Description: Activity Dependency
ACTIVITY_DEPENDENCY CONNECTING_OBJECT
ACTIVITY_DEPENDENCY ( ) has_connecting_activity_name
Property: has_connecting_activity_name
Label: Name
Description:Name is an attribute that is text description of the concerned acivi-
ty.
has_connecting_activity_name has domain ACTIVITY
has_connecting_activity_name has range xsd:string
ACTIVITY_DEPENDENCY ( )has_connecting_activity_source_ref.ACTIVITY ( )
has_connecting_activity_target_ref.ACTIVITY
Property: has_connecting_activity_source_ref
Label: aSourceRef
Description: aSourceRef is an attribute that identifies which Activity the
Connecting Object is connected from.
has_connecting_activity_source_ref has domain CONNECTING_OBJECT
has_connecting_activity_source_ref has range ACTIVITY
Property: has_connecting_activity_target_ref
Label: aTargetRef
Description: aTargetRef is an attribute that identifies which Activity the
Connecting Object is connected to.
has_connecting_activity_target_ref has domain CONNECTING_OBJECT
has_connecting_activity_target_ref has range ACTIVITY
Listing 4.5 Classe DATA_DEPENDENCY.
Class: DATA_DEPENDENCY
Label: Data Dependency
Description: Data Dependency
DATA_DEPENDENCY CONNECTING_OBJECT
DATA_DEPENDENCY ( )has_activity_input_sets.ACTIVITY ( )
has_activity_output_sets.ACTIVITY
has_activity_input_sets.ACTIVITY ≡ (DATA_OBJECT)
Pour valider cette partie du notre travail, nous avons utilisé une des plate-formes les
plus populaires appelé Protégé-OWL basé sur le langage d'ontologie Web (OWL). Cette
plate-forme est à la fois un éditeur d'ontologies, et un framework de base de connais-
sances très convivial, basé sur Java. La figure 4.4 montre la hiérarchie des classes (telles
qu'il apparaît dans l'outil Protégé) pour notre ontologie BPMN étendue, et la figure 4.5
représente le fichier OWL associé "ExtendedOntoBPMN.owl".
- 115 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 116 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
L'objectif principal étant de construire une base de connaissances à partir de cette on-
tologie pour permettre au chargé de l’ olutio des p o essus tie , qui est générale-
e t le odeleu et l’e pe t tie , de fo ule ses requêtes de changement.
Pour ce faire, le moteur qui répond à la demande du changement utilise le langage de
requête d'ontologie SPARQL23 pour analyser les relations de dépendance en déclenchant
toutes les gles d’a al se de d pe da e concernées expliquées dans la section sui-
vante. Ces relations de dépendance sont ensuite utilisées comme un moyen pour suivre la
propagatio de l’i pa t du ha ge e t.
23
http://jena.apache.org/tutorials/sparql.html
- 117 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 118 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 119 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
processus métier. Dans ce cas, FOx est supprimé et son statut est changé en "deleted", si
les i sta es e ou s d’e utio so t tournées vers un état non-activé
"NOT_ACTIVATED" ou activée "ACTIVATED".
FOx est marqué aussi en couleur verte pour notifier la faisabilité du changement ainsi
que ses connecteurs. Dans le cas contraire, FOx et ses connecteurs sont marqués en cou-
leur rouge pour notifier le fait que la suppression de FOx peut être appliquée au niveau du
schéma avec u is ue d’i cohérence dans la migration de ses instances vers ce nouveau
schéma. Le statut de FOx dans ce cas est changé en "waiting".
Listing 4.7 Supp essio d u f ag e t de p o essus au iveau du s h a.
Figure 4.6 L ajout de l a tivit «X» et la supp essio de l'a tivit «B»
- 121 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 122 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
ImpactPow ← getFromMap(ai) ;
clr ← getColorPathImpact(ImpactPow);
mark(ai, clr) ;
mark(F ∈ {Ωi(ai) ∪ Ωo(ai)}, clr)
end for
end if
End
end if
end for
for all ak ∈ ALLInDep U ALLOutDep(k = 1,…, n) do
ImpactPow ← getFromMap(ak) ;
clr ← getColorPathImpact (ImpactPow);
mark(ak, clr) ;
mark(F ∈ {Ωi(ak) ∪ Ωo(ak)} , clr);
end for
end for
end if
End
4.9 Conclusion
L’a al se de l’i pa t du ha ge e t est u e tape t s i po ta te dans la gestion de
l’ olutio des processus métier. Elle permet d’a oît e la p ise de o s ie e des diffé-
rents acteurs afin d'éviter les effets secondaires et d’estimer les effets de vagues du
changement concerné.
Dans ce chapitre, nous avons présenté une méthode permettant l’a al se a priori de
l’i pa t du ha ge e t des processus métier à travers une approche basée sur une défi-
- 124 -
. A al se a p io i de l’i pa t du ha ge e t des p o essus tie
- 125 -
CHAPITRE
5
La gestion qualitative des processus
métier
5. La gestion qualitative des processus métier
5.1 Introduction
La modélisation et l'amélioration de la qualité des processus métier ont connu un inté-
rêt croissant durant ces dernières décennies. En effet, les entreprises ont pris conscience
de l'impact indéniable que peuvent procurer une meilleure compréhension et une meil-
leure gestion de la qualité des processus métier en matière d'efficacité, de cohérence et
de transparence de leurs activités. Cet intérêt est appuyé par la norme ISO9000 qui re-
o a de d’ alue guli e e t la ualit des p o essus tie de l’e t ep ise afi de
pouvoir les surveiller et les améliorer (Morley, Hugues, Leblanc, & Hugues, 2004).
À cet ga d, l’ aluatio pe a e te de la qualité des processus métier et en particu-
lier celle des modèles de processus métier est l'une des exigences de toute mise en
œu e réussie d’u ensemble de p o essus au sei d’u e e t ep ise. En effet, obtenir des
modèles compréhensibles, réutilisables et facilement maintenables permet de minimiser
les défauts de conception et d’éviter des dysfonctionnements susceptibles de se produire
une fois les processus déployés.
Da s l’opti ue d’u e telle aluatio , u e a i t de caractéristiques (Guceglioglu &
Demirors, 2005), (Heravizadeh, Mendling, & Rosemann, 2009) et de métriques (Aguilar,
Cardoso, García, Ruiz, & Piattini, 2009), (Aguilar, Ruiz, García, & Piattini, 2006),
(Vanderfeesten, Cardoso, & Reijers, 2007) ont récemment été proposés afin de gérer,
mesurer et / ou d'améliorer la qualité des modèles de processus métier. La majorité de
ces travaux focalisent sur l’aspe t st u tu el de ces modèles, consistant ainsi à évaluer
certaines caractéristiques de la qualité telle que la compréhensibilité "understandability"
et la facilité de modification "modifiability" qui appartiennent respectivement aux con-
cepts plus généraux de la facilité d'utilisation "usability" et de la maintenabilité "maintai-
nability", respectivement.
Dans ce chapitre, nous proposons une approche plus exhaustive inspirée par la norme
ISO / CEI 9126-1 utilisant un ensemble pertinent de facteurs, de critères et de métriques,
permettant ainsi une meilleure aluatio de la ualit glo ale d’un processus métier, et
cela durant tout son cycle de vie et plus particulièrement après chaque changement de ce
dernier.
En effet, nous nous intéressons tout particulièrement dans ce chapitre à l’i pa t du
changement de la structure des processus métier sur la qualité, ce que nous appelons
l’impact qualitatif du ha ge e t. Le o e de odifi atio s d’u processus peut être
un indicateur important du taux de défaillance de ce processus, de sa stabilité et de sa
o ple it . Nous dis ute o s l’a al se de la p opagatio des i pa ts st u tu els et quali-
tatifs des changements. Notre objectif est de proposer une approche systématique de
mise en œu e de changements « réussis », e d’aut es te es de minimiser les risques
de dégradations de la qualité engendrés par les changements.
Le reste du chapitre est organisé comme suit : la section 5.2 met en exergue les enjeux
de l’ aluatio de la qualité des processus métier. La section 5.3 explore la notion
d’ aluatio de la ualit des p o essus tie a e une synthèse de l’ tat de l’a t des
différentes approches et métriques existantes permettant de mener une telle évaluation.
La section 5.4 explicite en détail l’ la o atio de l’app o he ue ous p oposo s à l’aide
d’u e e ple. La se tio . e plo e la otio d’ aluatio de la ualit a e l’aide du
- 127 -
5. La gestion qualitative des processus métier
- 128 -
5. La gestion qualitative des processus métier
- 129 -
5. La gestion qualitative des processus métier
Dans la même optique, d’autres travaux de recherche comme ceux détaillés ci-dessous
ont été proposés dans la littérature pour évaluer la complexité, le couplage, la cohérence,
la modularité, et la taille d’u od le de p o essus tie .
5.3.1.1 Mesurer la complexité d’un modèle de processus métier
La complexité mesure la simplicité "simpleness" et la compréhensibilité "understan-
dability" d’u od le de processus métier. Cardoso et al. (Cardoso, Mendling, Neumann,
& Reijers, 2006), ont ide tifi t ois t pes de o ple it d’u processus métier: (i) la com-
plexité des calculs " computational complexity", (ii) la complexité psychologique, "psycho-
logical complexity" et (iii) la complexité de représentation "representational complexity".
La première métrique présentée dans la littérature, qui est adaptée du nombre cyclo-
matic de McCabe (McCabe, 1976), permet de mesurer la complexité d’un flux de contrôle
au sei d’u od le de p o essus tie . Cette métrique est appelée "Control Flow Com-
plexity" (CFC) (Cardoso, Mendling, Neumann, & Reijers, 2006).
L'idée principale derrière cette métrique est d'évaluer la complexité introduite dans un
processus par la présence de passerelles tel que XOR-Split, OR-Split et AND-Split.
Ainsi, pour une passerelle XOR-Split, le CFC d’u flu de o t ôle est tout simplement
le nombre de points de sortie "fan-out" de la scission. Il est noté comme suit:
CFCXOR-split (a) = fan-out (a)
Pour une passerelle OR-split, le CFC d’u flu de o t ôle est de -1, où n représente
les points de sortie "fan-out" de la scission. Il est noté par:
CFCOR-split(a)= 2 fan-out(a) - 1
Pour une passerelle AND-split, le CFC d’u flu de o t ôle est de :
CFCAND-split (a) = 1
Mathématiquement, la métrique CFC est additionnelle. Ainsi, il est très facile de calcu-
ler la complexité d'un modèle de processus métier, pa l’additio des diff e ts CFC de
toutes les scissions dans le modèle de processus métier.
CFC (P) = ΣnI=0 CFCXOR-split (i) + Σj=0
n
CFCOR-split (j) + Σk=0
n
CFCAND-split (k)
- 130 -
5. La gestion qualitative des processus métier
Pour tester la validité de cette métrique, une expérience basée sur les propriétés de
Weyuker a été réalisée à travers une validation empirique (Cardoso J. , 2005). Il était
constaté que la métrique CFC est fortement corrélée avec la complexité du flux de con-
trôle d'un processus.
La métrique de cyclicité (CYC) proposée dans (Heravizadeh, Mendling, & Rosemann,
2009) o pte le atio e t e le o e de œuds a ti it s et passe elles da s u le
NNC et le o e total de œuds (TNN) dans un modèle de processus métier comme
suit :
CYC = NNC / TNN
Mendling propose dans (Mendling J. , 2006) une métrique dite de densité "Density me-
t i " i spi e pa l'a al se des seau so iau afi de ua tifie la o ple it d’u o-
d le de p o essus tie e p i à l’aide du diag a e EPC. Dans (Cardoso J. , 2005)
l'auteur présente une métrique permettant de mesurer la complexité du flux de données
des modèles de processus métier. Gruhn et Laue (Gruhn & Laue, 2006) utilisent la notion
de poids cognitifs "cognitive weights" comme une structure basique de contrôle pour me-
su e la diffi ult de la o p he sio d’u e st u tu e de o t ôle d’u o kflo .
5.3.1.2 Mesurer le couplage d’un modèle de processus métier
La notion de couplage dans les modèles de processus métier se réfère à la façon dont
les activités d'un processus métier sont liées ou connectées. Une activité est dite connec-
tée à une autre activité, si et seulement si elles partagent un ou plusieurs éléments
d’i fo atio telle ue des do es. La métrique de couplage d’u e activité détermine le
o e total d’activités qui lui sont liées (Vanderfeesten, Cardoso, & Reijers, 2007).
Pour un modèle de processus métier lambda, la métrique de couplage est égal au
nombre d'interconnexions entre toutes ses activités, en d'autres thèmes, cette métrique
compte toutes les paires d'activités dans le modèle de processus métier qui sont liées
l’u e à autre. En outre, le degré de couplage dépend de la complexité et du type de con-
nexions entre les activités (AND, OR, XOR).
La métrique de couplage d'une activité reflète la façon dont une activité critique ou
importante se situe dans un modèle de processus métier. En fait, une activité avec une
valeur de couplage élevée détermine le fonctionnement d’un grand nombre d’aut es ac-
tivités dans le processus métier. Ainsi, son dysfonctionnement peut causer le dysfonc-
tionnement de plusieurs autres activités. Ceci peut compromettre le fonctionnement glo-
bal du processus. Ce genre d’activités devrait être soit évitée dans un modèle de proces-
sus métier, ou traitée avec un soin particulier, par exemple, en ayant une action de con-
trôle pour cela.
D'autre part, un modèle de processus métier avec une valeur de couplage élevé in-
dique un niveau élevé de dépendances informationnelles entre ses activités ce qui rend le
processus vulnérable et sa maintenabilité difficile.
Une limite de la métrique de couplage est qu'elle ne donne pas une indication sur la
réutilisabilité d'un BPM. Cette caractéristique de qualité est importante pour la concep-
tion d’u modèle réutilisable. Une deuxième limite est axée sur les données échangées.
En effet, les informations sur la dépendance de l'activité en termes d'utilisation de don-
- 131 -
5. La gestion qualitative des processus métier
nées ne sont pas fournies. Cette métrique de couplage orientée donnée est complétée
par la métrique de cohésion décrite dans la section suivante.
5.3.1.3 Mesurer la cohésion d’un modèle de processus métier
Vanderfeesten et al. (Vanderfeesten, Reijers, & van der Alst, 2008), définissent la mé-
trique de cohésion comme le produit à la fois de la cohésion de la relation et de
l’information d’u e a ti it . Cela signifie que, pour chaque activité dans le modèle de
processus métier, la cohésion totale est calculée en multipliant la cohésion de l'informa-
tion et la cohésion de la relation de l'activité.
La elatio de oh sio ua tifie o ie d’op atio s diff e tes so t li es au sein
d'une activité. Cela détermine pour chaque opération d'une activité, combien d'autres
opérations partagent une entrée ou de sortie avec cette dernière. D'autre part, la cohé-
sion de l'information se concentre sur l'ensemble des éléments d'information qui sont
utilisés comme entrée ou de sortie par une opération à l'intérieur de cette activité.
La cohésion d’un modèle de processus métier représente le ratio entre la moyenne de
toutes les valeurs de cohésion d'activité (additionnant toutes les valeurs de cohésion) par
le nombre d'activités. La valeur de cette métrique de cohésion est toujours comprise
entre 0 et 1.
Cette proposition est appuyée par le travail de Reijers et Vanderfeesten (Reijers &
Vanderfeesten, 2004) qui proposent une métrique de cohésion qui calcule le degré de
couplage et de cohésion dans les modèles BOM (Bill Of Materials) en analysant les élé-
ments de données.
5.3.1.4 Mesurer la modularité d’un modèle de processus métier
La métrique de modularité M (Gruhn & Laue, 2006) o e so o l’i di ue est utili-
sée pour évaluer la modularité du modèle de processus métier. Elle est calculée comme
suit :
M = (fan-in * fan-out)2
Où fan-in représente tous les modules (ex : sous-processus) qui font appel à un autre
module m dans le modèle de processus métier et fan-out représente tous les modules qui
so t appel s à pa ti d’u odule m.
5.3.1.5 Mesurer la taille d’un modèle de processus métier
Les auteurs dans (Cardoso, Mendling, Neumann, & Reijers, 2006) proposent d'adapter
les t i ues de alstead pou esu e la taille d’u od le de p o essus tie . Cela
passe par le calcul de la longueur N, le volume V et la difficulté D d'un modèle de proces-
sus métier. Elles sont appelées "Halstead-based Process Complexity" (HPC) et calculées
comme suit:
N = n1 * log2 (N1) + N2 * log2 (n2)
V = (N1 + N2) * log2 (n1 + n2)
D = (n1 / 2) * (N2 / N2)
où:
- 132 -
5. La gestion qualitative des processus métier
- 133 -
5. La gestion qualitative des processus métier
- 134 -
5. La gestion qualitative des processus métier
Racine
BPMQ
Facteurs
Niveau
F1 F2 …. Fn
Critères
Niveau
C1 C2 …. Cn
(UDM)
(DM)
Métriques
Niveau
(BMS)
- 135 -
5. La gestion qualitative des processus métier
- 136 -
5. La gestion qualitative des processus métier
- 137 -
5. La gestion qualitative des processus métier
- 138 -
5. La gestion qualitative des processus métier
UDM (User-Defined Metrics) sont des métriques définies par les experts de la qua-
lit . L’utilisatio de es t i ues se justifie pa l’e p ie e de l’e pe t. Cette ex-
périence peut reposer sur des études empiriques qui justifient leur utilisation dans
un contexte bien précis. Cela peut t e pe ti e t pou la esu e d’u aspe t spé-
ifi ue d’un processus métier. UDM répond donc à des besoins spécifiques et ex-
p i e le poi t de ue de l’expert par rapport à une situation donnée. La définition
de ces métriques est généralement basée sur une ou plusieurs métriques appar-
tenant à BMS ∪ DM.
Dans ce qui suit, nous passons en revue, les différentes métriques que nous avons dé-
finies pour évaluer les critères de qualité définies ci-dessus.
5.4.6.1 Mesurer l’interopérabilité
L’i te op a ilit peut t e alu e e utilisa t deu t i ues ui so t : l’ ha ge de
données "Data exchangeability" (Dex) et la cohérence de l'interface "Interface Consisten-
cy" (InC). Elles peuvent être calculées comme suit :
La métrique Dex permet de calculer le ratio entre le nombre des objets de données
qui sont autorisés à être échangés avec succès avec d'autres processus ou activités au
cours des essais notés par NDA et le nombre total d'objets de données à échanger notée
TND.
Dex = NDA / TND
Où: TND = Σ Data Object-In du processus + Σ Data Object-Out du processus.
La métrique InC permet de calculer le ratio entre le nombre de messages échangés
entre participants noté NoM et le nombre total des activités noté TNA.
INC = Σ NoM / Σ TNA
5.4.6.2 Mesurer la maturité
Pour mesurer le critère de maturité, nous avons adapté deux métriques du domaine
des produits logiciels qui sont la densité des défauts "Fault density" (FD), et le mécanisme
de rappel "Callback" (NCB).
La métrique FD dénombre le o e de d fauts d te t s lo s de l’i spe tio ou du
déploiement du modèle de processus métier. Elle calcule le ratio entre le nombre de dé-
fauts détectés NF et la taille du modèle de processus métier N.
FD= NF / N
Un mécanisme de rappel ou de "callback" en anglais répond à la nécessité de retrans-
mettre directement un message suite à l'invocation simulant une relation synchrone. La
métrique callback dénombre le nombre de callbacks dans un modèle de processus métier
noté NCB.
NCB= Σ all a k
- 139 -
5. La gestion qualitative des processus métier
- 140 -
5. La gestion qualitative des processus métier
ΔQ BPMQ
ΔFp …. Maintainabilité ….
Δ p Complexité Couplage ….
Changement
Schéma de processus métier résultant
(S’)
Structurel 1.1.1 m
{N, IC, CYC, CFC…}
- 142 -
5. La gestion qualitative des processus métier
BPMQ
+
F1 F2 …. Fn
C1 C2 C5
+ C4 *
C4 + + Cn
C3
M1
+
M2
M3 M4 M5 Mn
-
Figure 5.3 Les d pe da es ho izo tales da s l valuatio de la ualit des p o essus tie .
Dans cette section, nous définissons les relations horizontales responsables de la pro-
pagatio de l’i pa t du ha ge e t e t e les fa teu s et it es de la ualit d’u
même i eau d’a st a tio . La p se tatio de es elatio s o stitue u o e
d’a al se des pe ussio s ausales de odifi atio d’u att i ut de la ualit su les
autres attributs de la qualité. En effet, ces dernières modélisent la complémentarité ou la
co t adi tio de deu att i uts da s l’ aluatio de la ualit . Il est ai si possi le de spé-
ifie des elatio s de t pes : l’a lio atio de la ualit d’u att i ut A 1 participe à amé-
lio e espe ti e e t d t io e elle d’u aut e att i ut A2 et vice-versa.
Du a t l’ olutio d’u fa teu de la ualit , les aut es fa teu s ui lui so t eli s peu-
e t gale e t olue . Cela o espo d à l’e iste e ou l’a se e de la p opagatio de
l’i pa t e t e les œuds du g aphe de la ualit . Pa e e ple, il est démontré par les
travaux de Laura Sánchez-González et al. (Sánchez-González, García, Mendling, Ruiz, &
Piattini, 2010) , (Sánchez-González, García, Mendling, & Ruiz, 2010), (Sánchez-González,
Ruiz, García, & Piattini, 2011) que les métriques qui évaluent les deux critères de qualité
qui sont la compréhensibilité "understandability" et la facilité de modification "modifiabi-
lity" évoluent de manière totalement corrélées.
Partant de ce constat, nous pouvons définir l’e se le U des a s du g aphe de la ua-
lité par deux sous-e se les disjoi ts : l’e se le V ep se ta t les elatio s e ti ales
entre facteurs, critères et métriques, et l’e se le des a s elia t des œuds d’u
même niveau de raffinement. L’o ie tatio de l’a i di ue la atu e de la p opagatio de
l’i pa t ualitatif ui peut t e li ell pa les s oles +, −, ou * indiquant respective-
ment un impact positif, négatif ou un changeant.
L’e se le des a s est alo s d fi i pa U = V ∪ , où est l’e se le des a s ho i-
zo tau . ep se te les elatio s de d pe da e e t e des œuds d’u e i eau,
telle que :
H = H+ ∪ H− ∪H*
- 143 -
5. La gestion qualitative des processus métier
Où, H+, H−, et H* désignent respectivement les arcs libellés par le symbole « + », « − »,
et « * ».
Donc, U = V ∪ H+ ∪ H− ∪ H* telle que :
(fi, fj) ∈ F :
(Qt(fi), Qt(fj) ∈ H+) Qt(fi) présente une évolution favorable pour Qt(fj) ;
(Qt(fi), Qt(fj) ∈ H-) Qt(fi) présente une évolution défavorable pour Qt(fj) ;
(Qt(fi), Qt(fj) ∈ H*) Qt(fi) présente une évolution changeante de Qt(fj) ;
Où Qt(fi d sig e l’esti atio du deg a e le uel le fa teu Fi est assu u e a-
leur quantifiant le facteur Fi).
Qt(ci), Qt(cj) ∈ Qt(C) :
(Qt(ci), Qt(cj) ∈ H+) Qt(ci) présente une évolution favorable pour Qt(cj) ;
(Qt(ci), Qt(cj) ∈ H-) Qt(ci) présente une évolution défavorable pour Qt(cj) ;
(Qt(ci), Qt(cj) ∈ H*) Qt(ci) présente une évolution changeante de Qt(cj) ;
Où Qt(ci d sig e l’esti atio du deg a e le uel le critère Ci est assuré (une va-
leur quantifiant le critère Ci).
5.6 Conclusion
La gestion de la qualité des processus métier et plus précisément celle des modèles de
processus métier a fait l’o jet de multiples travaux de recherche récemment. Le but étant
de ett e e pla e u a is e effi a e ui pe et d’a lio e la o p he sio , la
fiabilité et la réutilisation de ces modèles durant leur cycle de vie, et plus particulière-
ment, après chaque changement de processus métier.
E effet, l’a lio atio du o t ôle de l’ olutio des p o essus tie en évitant la
dégradation de la qualité dépend fortement de la compréhension des dépendances des
diff e ts l e ts d’u p o essus tie incluant ceux relatifs à la qualité.
Dans ce chapitre, nous avons proposé un cadre exhaustif inspirée par la norme ISO/
CEI 9126-1 représentent à la fois une contribution à la maturité des travaux existants à
l' ga d de l’ aluatio et de l'a lio atio de la ualit des p o essus métier et un moyen
permettant de traiter la p o l ati ue de l’a al se de l’i pa t du ha ge e t selo les
points de vue structurel et ualitatif. L’app o he p opos e pe et une meilleure traçabi-
lité de la propagation de l’i pa t du changement.
Nous avons également représenté des relations horizontales entre attributs de qualité
en plus des relations verticales permettant de définir ainsi des liens de contradiction ou
plus généralement de causalité en matière de contribution à la qualité générale du pro-
cessus métier.
- 144 -
CHAPITRE
6
Prototype de validation
6. Prototype de validation
6.1 Introduction
Afin de valider l’e se le des contributions de nos travaux proposés tout au long de
ce manuscrit, ous a o s is e œu e une plate-forme intégrant différents modules ou
composants implémentant chacun des aspects évoqués dans cette thèse. Cette plate-
forme qui est intégrée à un environnement de modélisation BPMN permet entre autres
de réaliser les fonctionnalités suivantes : (1) vérifier la cohérence des processus métier
après chaque changement, (2) de vérifier la conformité de ces modèles avec l’e se le
des règles de conformité, (3) d’ alue la ualit des od les de p o essus métier tout au
long de leur cycle de vie et plus particulièrement, après chaque changement, et enfin (4)
de p opage l’i pa t du ha ge e t des p o essus tie .
Notre plate-forme ainsi que tous les modules qui la constituent sont intégrés au sein
de l’IDE "Integrated Development Environment" Eclipse24 sous forme de plug-ins. Le choix
d’E lipse a t di t pa le fait ue ’est u IDE ope source largement utilisée pour cons-
truire des plates-formes de développement ou e tes et e te si les o stitu es d’outils et
de runtimes destinés à la construction, au déploiement et à la gestion de logiciels mais
aussi par l’e i o e e t de od lisatio BPMN utilisé comme noyau pour notre plate-
forme appelé BPMN2 Modeler25 qui est implémenté sous fo e d’u plug-in au sein de
ce dernier.
Dans ce chapitre, nous présentons la plate-forme appelée BPMN-CM "Business Pro-
cess Modeling Notation Change Management" en détaillant les différents modules qui
constituent son architecture. Le premier module de base est le plug-in BPMN2 Modeler
qui permet de modéliser un processus métier moyennant la notation BPMN. Ce module
est le composant central de notre prototype. Le second module qui est composé de deux
sous-modules permet à la fois de vérifier la cohérence et la conformité des modèles de
processus métier après chaque changement et cela, à t a e s l’utilisatio du plug-in EpiS-
pin26 comme model chercker. En effet, après avoir transformé automatiquement le mo-
d le de p o essus tie à ifie e P o ela, EpiSpi ifie l’a se e de toute e eu
structurelle susceptible de causer des incohérences dans ce modèle. La même démarche
est utilisée pour vérifier la constitution de ce modèle comme étant satisfaisante au regard
des règles de conformité.
Un autre modules du prototype a été conçu et implémenté pour gérer la qualité des
processus métier tout au long de leur cycle de vie et plus particulièrement, l’i pa t uali-
tatif ui peut t e le sultat d’u ha ge e t de p o essus tie . Enfin un dernier mo-
dule qui permet une analyse a priori de l’i pa t de e ha ge e t. Le sultat de ette
analyse est mis en évidence pa u e isualisatio de l’i pa t su les différents éléments
du modèle de processus métier.
Ce hapit e est o ga is o e suit : la se tio . su e l’a hite tu e et la concep-
tion générale du prototype de validation ainsi que les détails de chacun des modules qui
composent notre plate-forme. La section 6.3 présente les résultats de notre approche en
considérant un scénario illustratif de processus de remboursement des frais de fonction-
24
http://www.eclipse.org/pde
25
http://eclipse.org/bpmn2-modeler/
26
http://epispin.ewi.tudelft.nl/index.html
- 146 -
6. Prototype de validation
nement. La section 6.4 conclut le chapitre et discute brièvement les perspectives du déve-
loppement de notre prototype.
27
http://projects.eclipse.org/projects/birt
28
http://projects.eclipse.org/projects/soa
29
http://projects.eclipse.org/projects/modeling
- 147 -
6. Prototype de validation
File.prp
BPMN-CPA Plug-in
Base de connaissances
Plug-in Externe BPMN repository Base de règles
B
Annotations sémantiques
A + +
C R1
Plug-in Interne SPARQL Règles de faisabilité
BPMN Ontologies
R1
BPMN-CM R gles d’a al se d’i pa t
- 148 -
6. Prototype de validation
- 149 -
6. Prototype de validation
CR_Process_A.prp
Règles de conformités en LTL
ltl R1{[]((! F:e ==1) ->
<> P )}
ltl R2 { [ ] (( P : A<200) ->
T@A)} Model non valide
{Contre exemple}
CR2LTL
EpiSpin
BPMNVT
BPMN2 Modeler Model-checker
BPMN2PROMELA Plug-in
Model valide
BPMN Model Promela Model
B Chan [3] = [1] of int
A + + Proctype A(){...}
Proctype B(){...}
C Proctype C(){...}
Process_A.bpmn Process_A.pml
6.2.2.1 BPMN2PROMELA
Le plugin BPMN2PROMELA est un traducteur qui permet de transformer un modèle
BPMN en un modèle Promela. Le fichier *.pml est le résultat de cette traduction. Ce fi-
chier contient le code Promela o espo da t au od le BPMN sou e u’o eut i-
fier et dont le contenu est fourni comme entrée pour le plugin le model-checker EpiSpin
qui servira comme outil de vérification formelle (cf. figure 6.5).
Le pa si g ou l’a al se des od les BPMN pa le t aducteur BPMN2PROMELA est ba-
s e su l’asso iatio d’u e se le de outi es s a ti ues (des règles de réécriture)
pou la o st u tio d’a es s ta i ues a st aits ou AST "Abstract Syntax Tree" dont le
pa ou s et l’e ploitatio se i o t à la p odu tion du code Promela. Précisément, la syn-
taxe Promela sera organisée en objets BPMN correspondant (la Table 3.2 du chapitre 3
contient la correspondance entre les différents éléments BPMN et la syntaxe Promela).
Ainsi les instructions Promela telles que proctype, bloc, if-fi bloc, etc. représentent les
a hes de l’a e s ta i ue et les i st u tio s P o ela telles que les variables, les ca-
naux, envoi/ réception de messages représentent les feuilles de cet arbre.
La figure. 6.6 (a) nous donne un aperçu sur la façon dont le modèle BPMN est parsé en
arbre syntaxique, puis mappé en fragments de code PROMELA. La figure 6.6 (b) montre
l’a e s ta i ue étiqueté de (1 à 10) et la figure 6.6 (c) représente le code PROMELA
correspondant.
Dans cette traduction chaque activité est transformée en processus Promela par
exemple : proctype A(){…}, les flux de séquences en canaux de communication Promela
par exemple : chan ch[2]= [1] of {int}. Les flux de messages entre les différents
processus sont représentés en utilisant des entiers dans Promela.
- 150 -
6. Prototype de validation
Processus P
A B
(a)
mtype = {signal}
Racine
chan cS=[1] of {mtype}
Bloc de variable Bloc des canaux Bloc des processus proctype A(){
cS!signal(1);
}
Variables Canaux Processus Processus
proctype B(){
cS?signal(_);
}
(b) (c)
Figure 6.6 Exemple de l'arbre syntaxique.
int exist; KMO\workspace\BPMN2PROMELA\Files
chan cS1[2] = [1] of {int} ; #BPMNmodel.name=process_A.bpmn
cS1[0]= cS[0];/* Send to create expense
Account */
cS1[1]= cS[1];/* Send to review pre- Config.properties
Approval */
R:
if
:: exist=0 /* Account doesn’t exist */
:: exist=1 /* Account exist */
fi;
XORSplit(cS1,exist,1); goto R
}
Process.bpmn
- 151 -
6. Prototype de validation
6.2.2.2 CR2LTL
CR2LTL est un module qui propose une palette composée d’u e se le de connec-
teurs temporels et booléens pe etta t d’e p i e ainsi des formules LTL graphique-
ment (cf. figure 6.8). L’o je tif de e odule ta t de fournir un fichier *.prp a partir de la
représentation graphique de l’e se le des gles de o fo ité exprimées en LTL et
cela afin de fournir ce dernier comme entrée pour EpiSpin en plus du fichier *.pml conte-
nant le code Promela correspondant au modèle BPMN dont on veut vérifier la conformité
comme le montre l’a hite tu e de BPMNVT da s figure 6.5.
BPMNQ
Module d’évaluation
Module de calcul Module de Présentation
& d’interprétation
Σ
Figure 6.9 Architecture du plug-in BPMNQ.
- 152 -
6. Prototype de validation
- 153 -
6. Prototype de validation
rule "ChangeImpactPropagation"
when
FOxNode: BPMNNode(typeNode==”Activity”,stateNode==state.STATE_INIT) then
FOxEdge: BPMNNode(nodeSrc=activityNode,nodeDest=activityNode)
then
mark(FOxNode);
mark(FOxEdge);
if (FOxNode.getTypeChange() == “ADDED”)
FOxNode.setstateNode(states.STATE_ADDED);
if (FOxNode.getTypeChange() == “MODIFIED”)
FOxNode.setstateNode(states.STATE_ MODIFIED);
if (FOxNode.getTypeChange() == “DELETED”)
FOxNode.setstateNode(states.STATE_DELETED);
Calculate_Depth_of_Impac(FOxNode);
Propagate_Impact(FOxNode);
endif
end
30
http://www.jboss.org/drools/
- 155 -
6. Prototype de validation
6.3 Expérimentation
À tit e d’illust atio de fonctionnement de l’outil mis en place, nous proposons un scé-
nario représentant un processus de remboursement des frais de fonctionnement des
e plo es d’u e e t ep ise (cf. figure 6.13).
décidé d'apporter des changements sur le modèle de processus métier initial S en ajou-
tant un service qui permet de répondre à leurs besoins. Les modifications suivantes sont
apportées, pour satisfaire cette demande:
Si aucune action ’est e ta e dans les 7 jours qui suivent la demande, l'employé
doit recevoir une approbation par e-mail l’i fo a t de la progression de sa de-
mande.
Si la demande n'est pas traitée dans les 30 jours ouvrables, le processus est arrêté
et l'employé reçoit un avis d'irrecevabilité par e-mail.
Ce processus de remboursement des frais de fonctionnement doit aussi se conformer
à un ensemble de règles détaillées comme suivant:
R1 : si l e plo e eçoit pas de po se ap s Jou s de sa de a de, u e-mail
d i e eva ilit lui est ad ess .
R2: si l e plo e poss de pas de o pte, u ouveau o pte se a .
R3: si le montant est inférieur à 200$, alors le compte de dépenses doit être ap-
prouvé automatiquement.
R4: Après que la demande de remboursement est approuvée, l'argent est transféré
au compte bancaire de l'employé; autrement, une notification de rejet est envoyé
par e-mail à l'employé.
31
http://www.graphviz.org/
- 157 -
6. Prototype de validation
Figure 6.15 Vérification de la cohérence du processus de remboursement des frais par EpiSpin.
- 158 -
6. Prototype de validation
6.4 Conclusion
Dans ce chapitre nous avons décrit, la conception et les fonctionnalités de la plate-
forme que nous avons développée et déployée pour la validation de notre contribution
pour la gestio de l’ olutio des p o essus tie . Cette plate-forme a été développée
sous forme d’u e se le de plug-ins Eclipse pour une meilleure utilisation auprès de la
communauté BP et un meilleur retou d’e p ie e.
Dans e hapit e ous a o s d’a o d d it l’architecture globale de la plate-forme qui
est constituée de quatre principaux plug-ins Eclipse qui sont BPMN2 modeler, BPMN
verification tool, BPMN Quality, et BPMN change propagation analyser. Nous avons donc
détaillé les fonctionnalités de chacun de ces plug-ins.
Finalement nous avons montré, à travers un scénario représentant un processus de
remboursement de frais de fonctionnement, l’utilisatio de notre plate-forme pour la
gestion de l’ olutio des p o essus tie . Les expérimentations que nous avons
effe tu es à l’aide de la plate-forme BPMN-CM ont concerné particulièrement des
processus de différents secteurs (bancaires, gestion administrative, etc.) et avec
différents degrés de complexité.
Actuellement, ot e t a ail de d eloppe e t po te à la fois su l’a o plisse e t et
l’achèvement du plug-in BPMN-CPA, et cela en intégrant une base de connaissance à
l’aide de la plate-forme Jena32 mais aussi étendre cette analyse a priori de l’i pa t du
changement sur autres couches que celle des processus métier.
Nos t a au d’i pl e tatio o e ent aussi le développement d’un outil qui
pe et d’i te p te le sultat d’u o t e-exemple fourni par EpiSpin sous forme
graphique "COUNTEREXAMPLE2BPMN" et non plus textuel comme il est le cas
actuellement.
32
http://jena.sourceforge.net
- 160 -
CHAPITRE
7
Conclusion et perspectives
7. Conclusion et perspectives
- 162 -
7. Conclusion et perspectives
fournir une sémantique formelle à ces modèles et de générer ainsi tous les états possibles
d’u s st e da s lesquels la propriété à vérifier est testée exhaustivement sur l'en-
semble des exécutions possibles. En second lieu, nous avons exprimé en Logique Tempo-
relle Linéaire les différentes propriétés de cohérence des processus métier.
Le modèle résultant, ainsi que les différentes formules LTL sont fournis comme entrée
pour le model-checker SPIN qui a la charge de vérifier si ces propriétés sont satisfaites.
Da s le as d’u e réponse négative, SPIN fournit un contre-exemple montrant une exécu-
tion qui ne satisfait pas ces propriétés. De la même manière, cette approche a été adop-
tée pou ifie la o fo it des od les de p o essus tie a e l’e se le des
règles de conformité exprimées e LTL pa l’i te diai e de G-LTL suite à un change-
ment affectant l'un des deux.
Cependant, outre le fait que le model-checking ne peut adresser que des problèmes à
nombre d'états finis, une limite connue à l'utilisation de cette technique est l'explosion
combinatoire du nombre d'états. Cela dit, et en dépit de ces inconvénients qui sont ré-
sorbés en partie par certains travaux de recherche, la vérification formelle basée sur le
model-checking reste le meilleur choix à faire puisque la vérification est complètement
automatique et un contre-exemple est fourni dans le cas où la propriété serait violée.
7.1.1.2 Contribution à l’analyse a priori de l’impact du changement des processus mé-
tier
Lo s de l’ olutio des processus métier, il s’a e, pa fois, ue les modifications
apportées à une partie du modèle de processus métier ont un impact sur les autres
éléments du modèle. En effet, ce ph o e o u sous le o d’effet de ague se a-
nifeste par une propagation des effets de tout changement aussi minime soit-il sur un
t sg a d o e d’e tit s du p o essus. Il est do p i o dial de ett e e œu e des
a is es d’a al se a priori permettant de mieux comprendre et cerner la propagation
de l’i pa t du ha ge e t des p o essus tie afi d’ ite des situatio s i o t ôl es
survenant généralement après le changement et de conserver ainsi une certaine cohé-
rence du processus.
Dans notre deuxième contribution, nous avons proposé un mécanisme qui permet une
analyse a priori de l’i pa t du changement des processus métier à travers une
classification exhaustive des différentes relations de dépendance qui servent à véhiculer
la propagation de l’i pa t du ha ge e t. Ce a is e pe et non seulement
d’a al se les diff e tes relations de dépendance qui existent entre la partie changée et
les autres parties potentiellement affectées au sein du modèle de processus métier, mais
aussi d'analyser les relation entre ces modèles de processus métier et les services asso-
ciés.
Enfin, et pour mettre en place notre approche, nous avons p opos l’ la o atio d’un
système à base de connaissances et un ensemble de règles formulées pour les différents
types de relation permettant ainsi une analyse a priori de la propagation d’i pa t du
changement entre les différents éléments qui contituent et/ou qui communiquent avec
ce modèle de processus métier.
Cepe da t, u e des li ites a tuelles de ot e app o he d’a al se d’i pa t du
changement sur un modèle de processus métier consiste à ne pas prendre en
- 163 -
7. Conclusion et perspectives
considération certains types de relation de dépendance telles que les acteurs et les
ressources, et u’il faud ait i t g e pa la suite da s ot e d a he d’a al se.
D’ailleu s, e i est l’u e de os pe spe ti es, ue ous p se to s da s la se tio
suivante.
7.1.1.3 Contribution à la gestion qualitative des processus métier
M e s’il ’e iste pas a tuelle e t un consensus sur une définition standard de la
ualit des p o essus tie , di e ses app o hes pou l’ aluatio de la ualit des p o-
cessus métier ont été proposées dans la littérature. Dans une troisième contribution, et
après avoir fait un tour d'horizon des différents travaux de recherche dans ce domaine,
nous avons tenté de proposer un cadre exhaustif inspiré de la norme ISO/ CEI 9126-1 re-
présentant à la fois une contribution à la maturité des travaux existants à l'égard de
l’ aluatio et de l'a lio atio de la ualit des p o essus tie et u o e pe et-
ta t de t aite la p o l ati ue de l’a al se de l’i pa t ualitatif du ha ge e t.
Enfin, les trois phases de notre approche ep se te t les fo tio alit s d’u outil
que nous avons développé et appelé BPMN-CM. Cet outil offre un cadre qui accompagne
les modeleurs et les experts métier dans la modélisation BPMN et la gestion des
changements de ces modèles. Toutefois, nous penso s u’u p otot pe e d pit de so
oût de alisatio este a toujou s u sujet d’a lio atio . Dans la section suivante,
nous présentons les perspectives de notre thèse.
- 164 -
7. Conclusion et perspectives
- 165 -
7. Conclusion et perspectives
- 166 -
Bibliographie
Abd-El-Hafiz, S. K. (1996). Evaluation of a knowledge-based approach to program understanding.
The d Wo ki g Co fe e e o ‘eve se E gi ee i g WC‘E (pp. 275-284).
Washington, DC, USA: IEEE Computer Society.
Abouzaid, F., & Mullins, J. (2009). Model-checking Web Services Orchestrations using BP-calculus.
Electronic Notes in Theoretical Computer Science (ENTCS) Vol. 255, 3-21.
Adams, M., ter Hofstede, A. H., Edmond, D., & van der Aalst, W. M. (2005). facilitating flexibility
and dynamic exception handling in workflows through worklets. In 17th International
Conference on Advanced Information Systems Engineering (CAiSE'05), (pp. 45-50).
Agostini, R., & De Michelis, G. (2000). A light workflow management system using simple process
models. Computer Supported Cooperative Work, 335-363.
Aguilar, E. R., Cardoso, J., García, F., Ruiz, F., & Piattini, M. (2009). Analysis and Validation of
Control-Flow Complexity Measures with BPMN Process Models. The 10th International
Workshop on Enterprise, Business-Process and Information Systems Modeling
(BPMDS'09), and 14th International Conference, EMMSAD 2009, held at CAiSE 2009 (pp.
58-70 ). Amsterdam, The Netherlands: Springer Berlin Heidelberg.
Aguilar, E. R., Ruiz, F., García, F., & Piattini, M. (2006). Applying Software Metrics to evaluate
Business Process Models. CLEI Electron. Journal, Vol. 9, No. 1.
Alter, S. (1999). A general, yet useful theory of information systems. Association for Information
Systems, Vol.1, 1-70.
Arango, G., Schoen, E., & Pettengill, R. (1993). A process for consolidating and reusing design
knowledge. The 15th international conference on Software Engineering (ICSE '93) (pp.
231-242). Baltimore, MD, USA: IEEE Computer Society.
Arnold, R. S., & Bohner, S. A. (1993). Impact Analysis - Towards a Framework for Comparison. The
International Conference on Software Maintenance (ICSM '93) (pp. 292-301). Montréal,
Quebec, Canada: IEEE Computer Society.
Awad, A. (2007). BPMN-Q: A Language to Query Business Processes. The 2nd International
Workshop on Enterprise Modelling and Information Systems Architectures (EMISA'07),
(pp. 115-128). St. Goar, Germany.
- 167 -
Awad, A., & Puhlmann, F. (2008). Structural detection of deadlocks in business process models.
The 11th International Conference On Business Information Systems (BIS'08) (pp. 239-
250). Innsbruck, Austria: Springer Berlin Heidelberg.
Awad, A., Decker, G., & Weske, M. (2008). Efficient Compliance Checking Using BPMN-Q. The 6th
I te atio al Co fe e e o Busi ess P o ess Ma age e t BPM (pp. 326-341).
Milan, Italy: Springer Berlin Heidelberg.
Baniassad, E., & Clarke, S. (2004). Theme: An Approach for Aspect-Oriented Analysis and Design.
The 26th International Conference on Software Engineering (ICSE '04) (pp. 158-167). IEEE
Computer Society.
Becker, J., Rosemann, M., & von Uthmann, C. (2000). Guidelines of Business Process Modeling.
Dans Business Process Management (pp. 30-49). Springer Berlin Heidelberg.
Behrmann, G., David, R., & Larsen, K. G. (2004). A tutorial on UPPAAL. The International School on
Formal Methods for the Design of Computer, Communication, and Software Systems (pp.
200-236). Bertinora, Italy: Springer Berlin Heidelberg.
Bel Mokadem, H., Bérard, B., Bouyer, P., & Laroussinie, F. (2006). Timed Temporal Logics for
Abstracting Transient States. The 4th International Symposium on Automated Technology
for Verification and Analysis (ATVA'06) (pp. 337-351). Beijing, China: Springer Berlin
Heidelberg.
Belhajjame, K., Vargas-Solar, G., & Collet, C. (2001). Towards an Adaptable Workflow
Management System. 17èmes Journées BDA. Agadir, Maroc.
Biere, A. (2008). Tutorial on Model Checking, Modelling and Verification in Computer Science. The
3th International Conference on Algebraic Biology (AB'08) (pp. 16-21). Castle of
Hagenberg, Austria: Springer Berlin Heidelberg.
Bloom, J., Clark, C., Clifford, C., Duncan, A., Khan, H., & Papantoniou, M. (2003). Platform
Independent Petri-net Editor. Dans Rapport final du projet PIPE. Department of
Computing, Imperial College London.
Boehm, B. W., Brown, J. R., & Lipow, M. (1976). Quantitative evaluation of software quality. The
2nd international conference on Software engineering (ICSE '76) (pp. 592-605). IEEE
Computer Society.
Bohner, S. A. (1996). A Graph Traceability Approach for Software Change Impact Analysis.
Doctoral Dissertation - George Mason University.
Borghoff, U. M., Bottoni, P., Mussio, P., & Pareschi, R. (1997). Reflective Agents for Adaptive
Workflows. The 2d International Conference and Exhibition on Practical Application of
Intelligent Agents and Multi-Agents (PAAM'97) (pp. 405-420). London, UK: Society Press.
- 168 -
Boucher, X. (2007). Vers un pilotage agile de l'évolution des systèmes de production.
Briol, P. (2008). ingénierie des processus métiers de l'élaboration à l'exploitation. Edition Lulu.com.
Browne, M. C., Clarke, E. M., & Grümberg, O. (1988). Characterizing finite Kripke structures in
propositional temporal logic. Theoretical Computer Science - International Joint
Conference on Theory and Practice of Software Development Volume 59 Issue 1-2, 115-
131.
B , F., E ke t, M., Păt â ja , P.-L., & Romanenko, I. (2006). Realizing business processes with ECA
rules: benefits, challenges, limits. The 4th international conference on Principles and
Practice of Semantic Web Reasoning (PPSWR'06) (pp. 48-62). Budva, Montenegro:
Springer-Verlag Berlin.
Büchi, J. (1962). On a decision method in restricted second order arithmetic. The International
Congress on Logic, Method, and Philosophy of Science, (pp. 1-12).
Burch, J. R., Clarke, E. M., Mcmillan, K. L., Dill, D. L., & Hwang, L. J. (1990). Symbolic model
checking: 10^20 states and beyond. The 5th Annual IEEE Symposium on Logic in Computer
Science (LICS '90) (pp. 428-439). Philadelphia, Pennsylvania, USA: IEEE Computer Society.
Burkhart, T., & Loos, P. (2010). Flexible Business Processes - Evaluation of Current Approaches.
Multikonferenz Wirtschaftsinformatik. Göttingen, Germany.
Butler, K. A., Esposito, C., & Hebron, R. (1999). Connecting the design of software to the design.
Communications of the ACM. 42(1), 38-46.
Cardoso, J. (2005). About the Data-Flow Complexity of Web Processes. The 6th International
Workshop on Business Process Modeling, Development, and Support: Business Processes
and Support Systems: Design for Flexibility. Porto, Portugal.
Cardoso, J. (2005). Evaluating Workflows and Web Process Complexity. FL, USA: in Workflow
Handbook 2005, L. Fischer, Editor. 2005, Future Strategies Inc.: Lighthouse Point, p. 284-
290.
Cardoso, J., Mendling, J., Neumann, G., & Reijers, H. A. (2006). A discourse on complexity of
process models. International Workshops on Business Process Management (BPM'06) (pp.
117-128). Vienna, Austria: Springer Berlin Heidelberg.
Cardoso, J., Miller, J., & Arnold, J. (2002). Modeling Quality of Service for Workflows and Web
Service Processes. LSDIS Lab, Computer Science, University of Georgia. #02-200.
- 169 -
Casati, F., Ceri, S., Pernici, B., & Pozzi, G. (1996). Workflow Evolution. Data and Knowledge
Engineering, 438-455.
Cavano, J. P., & McCall, J. A. (1978). A framework for the measurement of software quality.
SIGSOFT Softw. Eng. Notes, 3(5), (pp. 133–139).
Chiu, D., Li, Q., & Karlapalem, K. (2001). Facilitating workflow evolution in an advanced object
environment. The 7th International Conference on Database Systems forAdvanced
Applications, (pp. 148-149). HongKong, China.
Chniti, A., Albert, P., & Charlet, J. (2011). Gestion de la cohérence des règles métier éditées à
pa ti d’o tologies OWL*. 22èmes Journées francophones d'Ingénierie des Connaissances
(IC 2011). Chambéry, France.
Chountas, P., Petrounias, I., & Kodogiannis, V. (2003). Temporal Modelling in Flexible Workflows.
The 18th International Symposium on Computer and Information Sciences (ISCIS' 03) (pp.
123-130). Antalya, Turkey: Springer Berlin Heidelberg.
Chulsoon, P., & Injun, C. (2004). Management of business process constraints using BPTrigger.
Journal of Computers in Industry Volume 55, Issue 1, 29–51.
Chun, S. A., Atluri, V., & Adam, N. R. (2002). Domain Knowledge-Based Automatic Workflow
Generation. The 13th International Conference on Database and Expert Systems
Applications (DEXA'02) (pp. 81-93). Aix-en-Provence, France: Springer Berlin Heidelberg.
Cimatti, A., Clarke, E., Giunchiglia, E., Giunchigli, F., Pistore, M., Roveri, M., et al. (2002). NuSMV 2:
An OpenSource Tool for Symbolic Model Checking. The 14th International Conference on
Computer Aided Verification (CAV'02) (pp. 359-364). Copenhagen, Denmark: Springer
Berlin Heidelberg.
Cimatti, A., Clarke, E., Giunchiglia, F., & Roveri, M. (2000). NUSMV: a new symbolic model checker.
International Journal on Software Tools for Technology Transfer.
Clarke Jr., E. M., Grumberg, O., & Peled, D. A. (1999). Model Checking. Cambridge, MA, USA: The
MIT Press; n edition (January 7, 1999).
Dą o ski, M., D a ik, M., T zaska, M., & Su ieta, K. . P otot pe of O je t-Oriented
Declarative Workflows. The 3th International Conference on Intelligent Information and
Database Systems (ACIIDS'11) (pp. 47-56). Daegu, Korea: Springer Berlin Heidelberg.
Dai, W., & Covvey, H. D. (2005). Query-Based Approach to Workflow Process Dependency Analysis.
Waterloo, Ontario,Canada: Technical Report 01, School of Computer Science and the
Waterloo Institute for Health Informatics Research .
- 170 -
David, R., & Alla, H. (1993). Autonomous and timed continuous Petri nets. Springer Berlin
Heidelberg.
David, R., & Alla, H. (2010). Non-Autonomous Petri Nets. Springer Berlin Heidelberg.
De Backer, M., & Snoeck, M. (2008). Business Process Verification: a Petri Net Approach. Belgium:
Technical report, Catholic University of Leuven.
Debauche, B., & Mégard, P. (2004). BPM Business Process Management : Pilotage métier de
l'entreprise. Edition Hermes Science Publications.
Decker, G., Dijkman, R., Dumas, M., & Luciano, G.-B. (2008). Transforming BPMN Diagrams into
YAWL Nets. The 6th International Conference on Business Process Management (BPM'08)
(pp. 386-389). Milan, Italy: Springer Berlin Heidelberg.
Dellen, B., Maurer, F., & Pews, G. (1997). Knowledge Based Techniques to Increase the Flexibility
of Workflow Management. Data and Knowledge Engineering, North-Holland, 269-295.
Deruelle, L., Bouneffa, M., Melab, N., Basson, H., & Goncalves, G. (2000). A Change Impact
Analysis Approach For CORBA-Based Federated Databases. The 11th International
Conference on Database and Expert Systems Applications (DEXA'00) (pp. 949-958).
London, UK: Springer Berlin Heidelberg.
Diaz, G., Pardo, J.-J., Cambronero, M.-E., Valero, V., & Cuartero, F. (2005). Automatic Translation
of WS-CDLChoreographies to Timed Automata. The international conference on European
Performance Engineering, and Web Services and Formal Methods, international
conference on Formal Techniques for Computer Systems and Business Processes
(EPEW'05/WS-FM'05) (pp. 230-242). Versailles, France: Springer-Verlag Heidelberg.
Dijkman, R. M., Dumas, M., & Ouyang, C. (2007). Formal Semantics and Analysis of BPMN Process
Models using Petri Nets.
El Kharbili, M., de Medeiros, A. K., Stein, S., & van der Aalst, W. P. (2008). Business Process
Compliance Checking Current State and Future Challenges. The Modellierung betrieblicher
I fo atio s s te e Mo IS , (pp. 107-113).
Fan, S., Dou, W., & Chen, J. (2007). Dual Workflow Nets: Mixed Control/Data-Flow Representation
for Workflow Modeling and Verification. The International Workshops: DBMAN 2007,
WebETrends 2007, PAIS 2007 and ASWAN 2007 (pp. 433-444). Huang Shan, China:
Springer-Verlag Berlin Heidelberg.
- 171 -
Farahbod, R., Glässer, U., & Vajihollahi, M. (2005). A Formal Semantics for the Business Process
Execution Language for Web Services. Web Services and Model-Driven Enterprise
Information Services (pp. 144-155). INSTICC Press.
Fehling, R. (1993). A concept of hierarchical Petri nets with building blocks. The 12th International
Conference on Application and Theory of Petri Nets (pp. 148-168). Springer Berlin
Heidelberg.
Feja, S., Speck, A., & Pulvermüller, E. (2009). Business Process Verification. GI-Jahrestagung, (pp.
4037-4051). Lübeck, Germany.
Fenton, N. E., & Pfleeger, S. L. (1998). Software Metrics: A Rigorous and Practical Approach.
Boston, MA, USA: PWS Publishing Co, 2ème edition.
Fernandez, J.-C., Garavel, H., Kerbrat, A., Mounier, L., Mateescu, R., & Sighireanu, M. (1996). CADP
- A Protocol Validation and Verification Toolbox. The 8th International Conference of
Computer Aided Verification (CAV '96) (pp. 437-440). Brunswick, NJ, USA: Springer Berlin
Heidelberg.
Ferrara, A. (2004). Web services: a process algebra approach. The 2nd international conference on
Service oriented computing (ICSOC'04), (pp. 242-251).
Fisler, K., Krishnamurthi, S., Meyerovich, L. A., & Tschantz, M. C. (2005). Verification and change-
impact analysis of access-control policies. The 27th international conference on Software
engineering (ICSE'05) (pp. 196-205). St. Louis, MO, USA: ACM New York.
Fisteus, J. A., Fernández, L. S., & Kloos, C. D. (2004). Formal Verification of BPEL4WS Business
Collaborations. The 5th International Conference on E-Commerce and Web Technologies
(EC-Web'04) (pp. 76-85). Zaragoza, Spain: Springer Berlin Heidelberg.
Fisteus, J. A., Fernández, L. S., & Kloos, C. D. (2004). Formal Verificationof BPEL4WS Business
Collaborations. Lecture notes in computer science , 76-85.
Foerster, A., Engels, G., & Schattkowsky, T. (2005). Activity Diagram Patterns for Modeling Quality
Constraints in Business Processes. The 8th International Conference on Model Driven
Engineering Languages and Systems (MoDELS'05) (pp. 2-16). Montego Bay, Jamaica:
Springer Berlin Heidelberg.
Fu, X., Bultan, T., & Su, J. (2004). Analysis of Interacting BPEL Web Services. 13th international
conference on World Wide Web (WWW '04) (pp. 621-630). ACM New York.
Ghidini, C., Rospocher, M., & Serafini, L. (2008). A formalisation of BPMN in Description Logics.
Technical report, FBK.
- 172 -
Ghose, A. K., & Koliadis, G. (2007). Auditing business process compliance. The 5th International
Conference on Service-Oriented Computing (ICSOC'07) (pp. 169-180). Vienna, Austria:
Springer Berlin Heidelberg.
Gillot, J.-N. (2008). The Complete Guide to Business Process Management: Business Process
Transformation or a Way of Aligning the Strategic Objectives of the Company and the
Information System Through the Processes. Edition Lulu.com.
Giurca, A., Lukichev, S., & Wagner, G. (2006). Modeling Web Services with URML. The Semantics
for Business Process Management Workshop (SBPM'06).
Goedertier, S., & Vanthienen, J. (2006). Compliant and Flexible Business Processes with Business
Rules. The CAISE*06 Workshop on Business Process Modelling, Development, and Support
(BPMDS 2006). Luxemburg.
Goedertier, S., & Vanthienen, J. (2006). Designing Compliant Business Processes with Obligations
and Permissions. Business Process Management Workshops, BPM'06 (pp. 5-14). Vienna ,
AUTRICHE: Springer-Verlag Berlin, Heidelberg.
Grim-Yefsah, M., Rosenthal-Sabroux, C., & Thion-Goasdoué, V. (2011). BoQal : une méthode pour
l' aluatio de la ualit d’u p o essus tie . 29ème congrès INFORSID. Lille, France.
Group, O. M., & OMG, O. M. (2007). Unified Modeling Language. le rapport de spécification
version 2.1.1, numéro : formal/2007-02-03.
Group, T. B. (2000, July). Defining Business Rules, What are they really? Récupéré sur
www.businessrulesgroup.org
Gruhn, V., & Laue, R. (2006). Complexity Metrics for Business Process Models. The 9th
International Conference on Business Information Systems (BIS'06), (pp. 1-12). Klagenfurt,
Austria.
Gruhn, V., & Laue, R. (2006). How Style Checking Can Improve Business Process Models. 8th
International Conference on Enterprise Information Systems (ICEIS'06). Paphos, Cyprus.
Gruhn, V., & Laue, R. (2007). What business process modelers can learn from programmers.
Science of Computer Programming, 4-13.
Guceglioglu, A. S., & Demirors, O. (2005). Using Software Quality Characteristics to Measure
Business Process Quality. The 3rd International Conference on Business Process
Management (BPM'05) (pp. 374-379 ). Nancy, France: Springer Berlin Heidelberg.
Haney, F. M. (1972). Module connection analysis: a tool for scheduling software debugging
activities. The AFIPS Joint Computer Conference (pp. 173-179). AFIPS / ACM / Thomson
Book Company.
- 173 -
Heinl, P., Horn, S., Jablonski, S., Neeb, J., Stein, K., & Teschke, M. (1999). A Comprehensive
Approach to Flexibility in Workflow Management Systems. international joint conference
on Work activities coordination and collaboration (WACC '99) (pp. 79-88). ACM SIGSOFT
Software Engineering.
Heinrich, R., & Paech, B. (2010). Defining the Quality of Business Processes. The Modellierung
2010. LNI, vol. P-161, (pp. 133–148). Bonner Köllen, Germany.
Henzinger, T. A., Jhala, R., Majumdar, R., & Sutre, G. (2003). Software Verification with BLAST. The
10th International SPIN Workshop on Model Checking Software (SPIN) (pp. 235-239).
Portland, OR, USA: Springer Berlin Heidelberg.
Heravizadeh, M., Mendling, J., & Rosemann, M. (2009). Dimensions of Business Processes Quality
(QoBP). The International Workshops on Business Process Management (BPM'08) (pp. 80-
91). Milano, Italy: Springer Berlin Heidelberg.
Herbst, J. (1999). An Inductive Approach to the Acquisition and Adaptation of Workflow Models.
The IJCAI'99 Workshop on Intelligent Workflow and Process Management: The New
Frontier for AI in Business, (pp. 52-57).
Hillah, L. M., Kindler, E., Kordon, F., Petrucci, L., & Treves, N. (2009). A primer on the Petri Net
Markup Language and ISO/IEC 15909-2. Petri Net Newsletter, Vol. 76 (2009), (pp. pp. 9-
28).
Hinton, A., Kwiatkowska, M., Norman, G., & Parker, D. (2006). PRISM: A Tool for Automatic
Verification of Probabilistic Systems. The 12th International Conference On Tools and
Algorithms for the Construction and Analysis of Systems (TACAS'06) (pp. 441-444). Vienna,
Austria: Springer Berlin Heidelberg.
Hinz, S., Schmidt, K., & Stahl, C. (2005). Transforming BPEL to Petri Nets. The International
Conference on Business Process Management (BPM'05) (pp. 220-235). Springer-Verlag.
Holzmann, G. J. (1997). The Model Checker SPIN. IEEE Transactions on Software Engineering, 279-
295.
Holzmann, G. J. (2003). The SPIN Model Checker. Primer and Reference Manual.
Hopcroft, J. E., Motwani, R., & Ullman, J. D. (2006). Introduction to Automata Theory, Languages,
and Computation. 3rd edition. Addison-Wesley, Reading.
- 174 -
Hornus, S., & Schnoebelen, P. (2002). On solving temporal logic queries. 9th International
Conference on Algebraic Methodology and Software Technology (AMAST'02) (pp. 163-
177). Saint-Gilles-les-Bains, Reunion Island, France: Springer Berlin Heidelberg.
Ishikawa, K. (1985). What is Total Quality Control? the Japanese Way. Prentice Hall.
ISO. (1989). LOTOS — A Formal Description Technique Based on the Temporal Ordering of
Observational Behaviour. International Organization for Standardization —
InformationProcessing Systems— Open Systems Interconnection.
ISO 9000:2000. (2005). ISO 9000:2000, Quality Management Systems - Fundamentals and
Vocabulary. International Organization for Standardization (ISO).
ISO/IEC 9126-1. (2001). ISO/IEC 9126-1.: Software engineering — Product quality — Part 1:
Quality model, First edition.
Jablonski, S., & Bussler, C. (1996). Workflow Management: Modeling Concepts, Architecture and
Implementation. International Thomson Publishing.
Jansen-Vullers, M., & Netjes, M. (2006). Business process simulation – a tool survey. The 7eme
Workshop and Tutorial on Practical Use ofColoured Petri Nets and CPN Tools.
Janssen, W., Mateescu, R., Mauw, S., & Springintveld, J. (1998). Verifying Business Processes using
SPIN. The 4th International SPIN Workshop, (pp. 21-36).
Jensen, K. (1992). Coloured Petri Nets. Modelling and Validation of Concurrent Systems.
Kherbouche, M. O., & Basson, H. (2011). Modélisation et analyse pour la gestion de l'évolution
des BPM. 29ème congrès INFORSID (Forum des jeunes chercheurs) (pp. 441-442). Lille,
France: INFORSID.
Kherbouche, M. O., Ahmad, A., & Basson, H. (2012). Detecting structural errors in BPMN process
models. The 15th IEEE International Multitopic Conference (INMIC'12) (pp. 425-431).
Islamabad, Punjab, Pakistan: IEEE Computer Society.
Kherbouche, M. O., Ahmad, A., & Basson, H. (2013). Formal approach for compliance rules
checking in Business Process Models. 2013 IEEE International Conference on Emerging
Technologies (ICET'13). Islamabad, Punjab, Pakistan: IEEE Computer Society.
Kherbouche, M. O., Ahmad, A., & Basson, H. (2013). Using model checking to control the
structural errors in BPMN models. The 7th IEEE International Conference on Research
Challenges in Information Science (RCIS'13) (pp. 1-12). Paris, France: IEEE Computer
Society.
Kherbouche, M. O., Ahmad, A., Bouneffa, M., & Basson, H. (2013). Ontology-based change impact
assessment in dynamic business processes. The 11th International Conference on
Frontiers of Information Technology (FIT'13). Islamabad, Pakistan: IEEE Computer Society .
- 175 -
Kherbouche, O. M., Ahmad, A., Bouneffa, M., & Basson, H. (2013). Analyzing the ripple effects of
change in business process models. 16th IEEE International Multitopic Conference
(INMIC'13). Lahore, Pakistan: IEEE Computer Society.
Kim, K.-H. (2003). Workflow Dependency Analysis and Its Implications on Distributed Workflow
Systems. The 17th International Conference on Advanced Information Networking and
Applications (AINA'03) (pp. 677-682). IEEE Computer Society.
Knethen, A. v. (2001). A trace model for system requirements changes on embedded systems. The
4th International Workshop on Principles of Software Evolution (IWPSE '01) (pp. 17-26).
ACM New York.
Knolmayer, G., Endl, R., & Pfahrer, M. (2000). Modeling Processes and Workflows by Business
Rules. Business Process Management, Models, Techniques, and Empirical Studies (pp. 16-
29). Springer-Verlag.
Koehler, J., Tirenni, G., & Kumaran, S. (2002). From Business Process Model to Consistent
Implementation: A Case for Formal Verification Methods. the 6th International Entreprise
Distributed Object Computing Conference (EDOC'02) (pp. 96-106). Lausanne, Switzerland:
IEEE Computer Society.
Koshkina, M., & Van Breugel, F. (2003). Verification of business processes for Web services. Report
CS-2003-11, York University.
Kradolfer, M., & Geppert, A. (1999). Dynamic Workflow Schema Evolution based on Workflow
Type Versioning and Workflow Migration. The International Conference on Cooperative
Information Systems (CoopIS '99), (pp. 104-114).
Kripke, S. (1963). Semantical Considerations on Modal Logic. Acta Philosophica Fennica (16), 83-
94.
Kumar, K., & Narasipuram, M. M. (2006). Defining Requirements for Business Process Flexibility.
BPMDS 2006.
- 176 -
Laird, L. M., & Brennan, M. C. (2006). Software Measurement and Estimation: a Practical
Approach (Quantitative Software Engineering Series). Wiley-IEEE Computer Society Pr; 1
edition .
Langner, P., Schneider, C., & Wehler, J. (1998). Petri Net Based Certification of Event-Driven
Process Chains. The 19th International Conference on Application and Theory of Petri Nets
(pp. 286-305). Springer-Verlag London.
Lapadula, A., Pugliese, R., & Tiezzi, F. (2007). A Calculus for Orchestration of Web Services. The
16th European Symposium on Programming (ESOP'07) (pp. 33-47). Braga, Portugal:
Springer Berlin Heidelberg.
Laroussinie, F., & Schnoebelen, P. (1995). A hierarchy of temporal logics with past. Theoretical
Computer Science 148(2), 303–324.
Laue, R., & Awad, A. (2011). Visual suggestions for improvements in business process diagrams.
Journal of Visual Languages & Computing, 385–399.
Lerner, B. S., Christov, S., Wise, A., & Osterweil, L. J. (2008). Exception Handling Patterns for
Process Modeling. 4th international workshop on Exception handling (WEH '08) (pp. 55-
61). ACM New York.
Leymann, F. (2001). Web Services Flow Language (WSFL 1.0). Récupéré sur
http://cin.ufpe.br/~redis/intranet/bibliography/standards/leymann-wsfl01.pdf
Leymann, F., & Roller, D. (2000). Production Workflow: Concepts and Techniques. Edition PTR
Prentice Hall.
Li, B. (2003). Managing Dependencies in Component-Based Systems Based on Matrix Model. Dans
Proc. Of Net.Object.Days 2003 (pp. 22-25).
Lindvall, M., & Sandahl, K. (1998). Traceability aspects of impact analysis in object-oriented
systems. Journal of Software Maintenance: Research and Practice Vol. 10 Issue 1, 37-57.
Liu, Y., Müller, S., & Xu, K. (2007). A static compliance-checking framework for business process
models. IBM Systems Journal Volume 46 Issue 2, 335-361.
Lu, R., & Sadiq, S. (2007). A Survey of Comparative Business Process Modeling Approaches. 10th
International Conference on Business Information Systems (BIS), number 4439 in LNCS (pp.
82-94). Springer.
Malone, T. W., Crowston, K., Lee, J., Pentland, B., Dellarocas, C., Wyner, G., et al. (1999). Tools for
Inventing Organizations: Toward a Handbook of Organizational Processes. Journal of
Management Science Vol.45 Issue 3, 425-443.
- 177 -
Marcus, A., & Maletic, J. I. (2003). Recovering documentation-to-source-code traceability links
using latent semantic indexing. The 25th International Conference on Software
Engineering (ICSE '03) (pp. 125-135). IEEE Computer Society.
Massuthe, P., & Weinberg, D. (2008). Fiona: A tool to analyze interacting open nets. The 15th
German Workshop on Algorithms and Tools for Petri Nets (AWPN'08) (pp. 99-104). CEUR
Workshop Proceedings Vol. 380.
Matjaz, B. J. (2006). Business Process Execution Language for Web Services BPEL and BPEL4WS
2nd Edition.
McCabe, T. (1976). A Complexity Measure. IEEE Transactions on Software Engineering Vol. 2 issus
4, 308-320.
Mccall, J. A., Cavano, J. P., & Walters, G. (1977). Factors in Software Quality 1, 2, and 3.
Mendling, J. (2006). Testing Density as a Complexity Metric for EPCs. Austria: Technical Report JM-
2006-11-15. Vienna University of Economics and Business Administration.
Mendling, J. (2008). Metrics for Process Models : Metrics for Process Models Empirical
Foundations of Verification, Error Prediction, and Guidelines for Correctness. Springer
Publishing Company.
Milner, R. (1999). Communicating and Mobile Systems: The Pi Calculus. Cambridge University
Press; 1st edition.
Minor, M., Schmalen, D., Koldehoff, A., & Bergmann, R. (2007). Structural adaptation of workflows
supported by a suspension mechanism and by case-based reasoning. 16th IEEE
International Workshops on Enabling Technologies: Infrastructure for Collaborative
Enterprises (WETICE'07), (pp. 370-375). Evry, France.
Mooney, J., Beath, C., Fitzgerald, G., Ross, J., & Weill, P. (2003). Managing Information Technology
for Strategic Flexibility and Agility: Rethinking Conceptual Models, Architecture,
Development, and Governance. 24th International Conference on Information Systems
(ICIS 2003). Seattle, WA, USA.
Mordechai, B.-A. (2008). Principles of the Spin Model Checker. Springer Berlin Heidelberg.
Morley, C., Bia-Figueiredo, M., & Gillette, Y. (2011). Processus métiers et S.I. - Gouvernance,
management, modélisation. DUNOD.
- 178 -
Morley, C., Hughes, J., Leblanc, B., & Hugues, O. (2007). Processus métiers et S.I. : évaluation,
modélisation, mise en oeuvre. Edition DUNOD.
Morley, C., Hugues, J., Leblanc, B., & Hugues, O. (2004). Processus Métiers et systèmes
d'information : Evaluation, modélisation, mise en oeuvre. Dunod.
Müller, R., Greiner, U., & Rahm, E. (2004). AGENT WORK: a workflow system supporting rule-
based workflow adaptation. Data & Knowledge Engineering Vol. 51(2), 223-256.
Nurcan, S. (2008). A Survey on the Flexibility Requirements Related to Business Processes and
Modeling Artifacts. The 41st Annual Hawaii International Conference on System Sciences
(HICSS '08) (pp. 378-388). Big Island, Hawaii, USA: IEEE Computer Society Washington.
Nurcan, S., Etien, A., Kaabi, R. S., Zoukar, I., & Rolland, C. (2005). A Strategy Driven Business
Process Modelling Approach. Special issue of the Business Process Management Journal
on "Goal-oriented business process modeling", Emerald, 11:6.
OASIS. (2007). Business Process Execution Language for Web Services (BPE4WS 2.0). Récupéré sur
https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
OASIS Standard. (2007). OASIS Web Services Business Process Execution Language (WSBPEL) TC.
Récupéré sur https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
OMG, O. M. (2011, January). Business Process Model and Notation (BPMN) Version 2.0. Récupéré
sur http://www.omg.org/spec/BPMN/2.0/PDF
Onoda, S., Ikkai, Y., Kobayashi, T., & Komoda, N. (1999). Definition of Deadlock Patterns for
Business Processes Work ow Models. Thirty-second Annual Hawaii International
Conference on System Sciences (HICSS '99) (pp. 50-65). IEEE Computer Society.
Ouyang, C., Dumas, M., ter Hofstede, A. H., & Van der Aalst, W. M. (2006). From BPMN Process
Models to BPEL Web Services. IEEE International Conference on Web Services (ICWS'06)
(pp. pp. 285-292). IEEE Computer Society Washington, DC, USA.
Ouyang, C., Van der Aalst, W. M., Dumas, M., & ter Hofstede, A. H. (2006). Translating BPMN to
BPEL*. Dans le rapport BPM-06.
Ouyang, C., Verbeek, E., van der Aalst, W. M., Breutel, S., Dumas, M., & ter Hofstede, A. H. (2005).
WofBPEL: A Tool for Automated Analysis of BPEL Processes. The Third International
Conference On Service-Oriented Computing - (ICSOC'05) (pp. 484-489). Amsterdam,
Netherlands: Springer Berlin Heidelberg.
- 179 -
Pesic, M., & Van der Aalst, W. M. (2006). A declarative approach for flexible business processes
management. International conference on Business Process Management
Workshops,BPM'06 (pp. 169-180). Springer-Verlag Berlin, Heidelberg.
Pesic, M., Schonenberg, H., & van der Aalst, W. M. (2007). DECLARE: Full Support for Loosely-
Structured Processes. The 11th IEEE International Enterprise Distributed Object Computing
Conference (EDOC '07) (pp. 287-300). Annapolis, Maryland, USA: IEEE Computer Society.
Pfleeger, S. L., & Bohner, S. A. (1990). A Framework for Software Maintenance Metrics. The IEEE
Transactions on Software Engineering (pp. 320-327). San Diego, CA, USA: IEEE Computer
Society.
Pistore, M., Traverso, P., Bertoli, P. G., & Marconi, A. (2005). Automated Synthesis of Composite
BPEL4WS Web Services. The IEEE International Conference on Web Services (ICWS '05)
(pp. pp. 293-301). IEEE Computer Society .
Pnueli, A. (1979). The temporal semantics of concurrent programs. The International Symposium
on Semantics of Concurrent Computation (pp. 1-20). Evian, France: Springer Berlin
Heidelberg.
Prandi, D., Quaglia, P., & Zannone, N. (2008). Formal analysis of BPMN via a translation into
COWS. The 10th international conference on Coordination models and languages (pp.
249-263). Oslo, Norway: Springer Berlin Heidelberg.
Proth, J.-M., & Xie, X. (1995). Les réseaux de Petri pour la conception et la gestion des systèmes de
production. Masson.
Pu, G., Zhao, X., Wang, S., & Qiu, Z. (2006). Towards the Semantics and Verification of BPEL4WS.
Electronic Notes in Theoretical Computer Science, 33–52.
Puhlmann, F., & Weske, M. (2005). Using the pi-calculus for Formalizing Workflow Patterns. The
3rd international conference on Business Process Management (BPM'05) (pp. 153-168).
Springer-Verlag Berlin, Heidelberg.
Rajabi, B. A., & Lee, S. P. (2010). Modeling and analysis of change management in dynamic
business process. International Journal of Computer and Electrical Engineering, 2 (1), 181-
189.
Rajlich, V. (1997). A Model for Change Propagation Based on Graph Rewriting. The International
Conference on Software Maintenance (ICSM '97) (pp. 84-91). Washington, DC, USA: IEEE
Computer Society.
Ramadan, M., Elmongui, H. G., & Hassan, R. (2011). BPMN Formalisation using Coloured Petri
Nets. The 2nd GSTF Annual International Conference on Software Engineering &
Applications (SEA'11). Singapore, Singapore.
Regev, G., & Wegmann, A. (2005). A regulation-based view on business process and supporting
system flexibility. CAiSE Wo kshops, (pp. 91-98).
- 180 -
Regev, G., Soffer, P., & Schmidt, R. (2006). Taxonomy of Flexibility in Business Processes. 7th
Workshop on Business Process Modeling, Development, and Support (BPMDS'06), (pp. 90-
93). Luxemburg.
Reichert, M., & Dadam, P. (1998). ADEPTflex-supporting dynamic changes of workflows without
losing control. Journal of Intelligent Information Systems, 93-129.
Reichert, M., Dadam, P., & Bauer, T. (2003). Dealing with forward and backward jumps in
workflow management systems. Software and Systems Modeling Volume 2, Issue 1, 37-
58.
Reichert, M., Rinderle, S., Kreher, U., & Dadam, P. (2005). Adaptive Process Management with
ADEPT2. The 21st International Conference on Data Engineering (ICDE '05) (pp. 1113-
1114). Tokyo, Japan: IEEE Computer Society.
Reijers, H. A. (2006). Workflow Flexibility: The Forlorn Promise. 15th IEEE International Workshops
on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE '06) (pp.
271-272). IEEE Computer Society.
Reijers, H. A., & Vanderfeesten, I. T. (2004). Cohesion and Coupling Metrics for Workflow Process
Design. The 2nd International Conference on Business Process Management (BPM'04) (pp.
290-305). Potsdam, Germany: Springer Berlin Heidelberg.
Rinderle, S., Reichert, M., & Dadam, P. (2003). Evaluation of Correctness Criteria for Dynamic
Workflow Changes. The International Conference On Business Process Management
(BPM'03) (pp. 41-57). Eindhoven, The Netherlands: Springer Berlin Heidelberg.
Rinderle, S., Reichert, M., & Dadam, P. (2003). On Dealing With Semantically ConflictingBusiness
Process Changes. Technical Report. University of Ulm, Ulm.
Rinderle, S., Reichert, M., & Dadam, P. (2004). Correctness criteria for dynamic changes in
workflow systems: a survey. Data & Knowledge Engineering, 9-34.
Rinderle, S., Reichert, M., & Dadam, P. (2004). Disjoint and Overlapping Process Changes:
Challenges, Solutions, Applications. The 11th International Conference on Cooperative
Information Systems (CooplS'04) (pp. 101-120). Agia Napa, Cyprus: Springer Berlin
Heidelberg.
Rolón Aguilar, E., García, F., & Ruiz, F. (2006). Evaluation Measures for Business Process Models.
The ACM S posiu o Applied Co puti g SAC (pp. 1567-1568). Dijon, France:
ACM New York.
Rolón Aguilar, E., Ruiz, F., García, F., & Piattini, M. (2006). Applying Software Metrics to evaluate
Business Process Models. CLEI electronic journal, Vol.9 Number 1.
- 181 -
Rosario, S., Benveniste, A., Haar, S., & Jard, C. (2006). Net systems semantics of Web Services
Orchestrations modeled in Orc. Research Report IRISA, No. 1780 Istitut de Recherche en
Informatique et Systèmes Aléatoires.
Ross, A. M., Rhodes, D. H., & Hastings, D. E. (2008). Defining Changeability: Reconciling Flexibility,
Adaptability, Scalability, Modifiability, and Robustness for Maintaining System Lifecycle
Value. Systems Engineering, 246-262.
Rozier, K. Y. (2011). Survey: Linear Temporal Logic Symbolic Model Checking. Computer Science
Review Volume 5 Issue 2, 163-203.
Russell, N., & te ofstede, A. . 2009). newYAWL: Towards Workflow 2.0. Dans T. o. II, Special
Issue on Concurrency in Process-Aware Information Systems (pp. 79-97). Springer Berlin
Heidelberg.
Russell, N., Ter Hofstede, A. H., & Mulyar, N. (2006). Workflow ControlFlow Patterns: A Revised
View. BPM Center Report BPM-06-22.
Russell, N., Ter Hofstede, A. H., Edmond, D., & van der Aalst, W. M. (2005). Workflow Data
Patterns: Identification, Representation and Tool Support. International Conference on
Conceptual Modeling (ER), (pp. 353-368). Klagenfurt, Austria.
Russell, N., van der Aalst, W. M., Ter Hofstede, A. H., & Edmond, D. (2004). Workflow Resource
Patterns: Identification, Representation and Tool Support. 17th International Conference,
CAiSE 2005 (pp. 216-232). Porto, Portugal: Advanced Information Systems Engineering.
Ryder, B. G., & Tip, F. (2001). Change impact analysis for object-oriented programs. The 2001 ACM
SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
(PASTE '01) (pp. 46-53). ACM New York.
Sadiq, S., & Orlowska, M. (1999). Architectural Considerations in Systems Supporting Dynamic
Workflow Modification. The Workshop on Software Architectures for Business Process
Ma age e t at the th Co f. o Adva ed I fo atio S ste s E gi ee i g CaiSE .
Heidelberg, Germany.
Sadiq, S., Orlowska, M., & Sadiq, W. (2004). Data flow and validation in workflow modelling. The
the 15th Australasian database conference (ADC '04 ) (pp. 207-214). Australian Computer
Society.
Sadiq, W., & Orlowska, M. E. (1996). Modeling and Verification of Workflow Graphs. Australia:
Technical Report No. 386 Department of Computer Science, The University of
Queensland, Australia.
Sadiq, W., & Orlowska, M. E. (1997). On Correctness Issues in Conceptual Modeling of Workflows.
European Conference on Informatio S ste s ECIS . Cork, Ireland.
- 182 -
Sadiq, W., & Orlowska, M. E. (1999). On Capturing Process Requirements ofWorkflow
BasedBusiness Information Systems. 3rd International Conference on Business
Information Systems BIS'99 (pp. 281-294). Poznan, Poland: Springer Verlag.
Salaün, G., Bordeaux, L., & Schaerf, M. (2004). Describing and reasoning on Web services using
process algebra. The IEEE International Conference on Web Services, (pp. 43-50).
Salaün, G., Ferrara, A., & Chirichiello, A. (2004). Negotiation Among Web Services Using
LOTOS/CADP. The European Conference Web Services (ECOWS'04) (pp. pp. 198-212).
Erfurt, Germany: Springer-Verlag Berlin Heidelberg.
Sánchez-González, L., García, F., Mendling, J., & Ruiz, F. (2010). Quality Assessment of Business
Process Models Based on Thresholds. The Confederated International Conferences On the
Move to Meaningful Internet Systems: OTM 2010 (pp. 78-95 ). Hersonissos, Crete, Greece:
Springer Berlin Heidelberg.
Sánchez-González, L., García, F., Mendling, J., Ruiz, F., & Piattini, M. (2010). Prediction of Business
Process Model Quality Based on Structural Metrics. The 29th International Conference on
Conceptual Modeling (ER'10) (pp. 458-463 ). Vancouver, BC, Canada: Springer Berlin
Heidelberg.
Sánchez-González, L., Ruiz, F., García, F., & Piattini, M. (2011). Improving Quality of Business
Process Models. The 6th International Conference on Evaluation of Novel Approaches to
Software Engineering (ENASE'11) (pp. 130-144). Beijing, China: Springer Berlin Heidelberg.
Scheer, A.-W. (2000). ARIS: Business Process Modelling. Springer-Verlag Berlin and Heidelberg .
Scheer, A.-W. (2010). ARIS - Business Process Frameworks. Springer; 3rd edition (June 29, 2010) .
Schmidt, K. (2000). LoLA: a low level analyser. The 21st International Conference Application and
Theory of Petri Nets (ICATPN'00) (pp. 465-474). Aarhus, Denmark: Springer Berlin
Heidelberg.
Schneider, K., & Prof.Dr Schmid, D. (1997). CTL and Equivalent Sublanguages of CTL. The 5th
International Conference on Computer Hardware Description Languages and their
Applications (pp. 40-59). Toledo, Spain: Springer US.
Schonenberg, H., Mans, R., Russell, N., Mulyar, N., & van der Aalst, W. (2008). Process Flexibility: A
Survey of Contemporary Approaches. Advances in Enterprise Engineering.
Schonenberg, M., Mans, R., Russell, N., Mulyar, N., & van der Aalst, W. (2007). Towards a
Taxonomy of Process Flexibility (Extended Version). Dans le rapport interne BPM Center
Report BPMcenter.org, 2007.
Soffer, P. (2005). On the Notion of Flexibility in Business Processes. CAiSE Wo kshops, (pp. 35-
42).
- 183 -
Song Dong, J., Liu, Y., Sun, J., & Zhang, X. (2006). Verification of Computation Orchestration via
Timed Automata. The 8th International Conference on Formal Engineering Methods (pp.
226-245). Springer Verlag.
Speck, A., Feja, S., Witt, S., & Pulvermüller, E. (2011 ). Formalizing Business Process Specifications.
Computer Science and Information Systems 2011 Vol. 8, Issue 2, 427-446.
SPINOV. (2006). Modélisation des Processus Métiers: Etat de l'Art et Conseils Pratiques. Rapport
CITI.
Sun, P., & Jiang, C. (2009). Analysis of workflow dynamic changes based on Petri net. Information
and Software Technology Vol. 51, Issue 2, 284–292.
Sun, Y., Huang, J. Z., & Meng, X. (2011). Integrating constraints to support legally flexible business
processes. Information Systems Frontiers archive Volume 13 Issue 2, 171-189.
Takemura, T. (2008). Formal Semantics and Verification of BPMN Transaction and Compensation.
The IEEE Asia-Pacific Services Computing Conference (APSCC '08), (pp. 284-290). Los
Alamitos.
Tantitharanukul, N. (2010). Detecting deadlock and multiple termination in BPMN model using
process automata. International Conference on Electrical Engineering/Electronics
Computer Telecommunications and Information Technology (ECTI-CON 2010), (pp. 478-
482). Chaing Mai.
Tantitharanukul, N., & Jumpamule, W. (2010). Detection of LiveLock in BPMN Using Process
Expression. The 4th International Conference on Advances in Information Technology
(IAIT'2010) (pp. 164-174). Bangkok, Thailand: Advances in Information
TechnologyCommunications in Computer and Information Science.
Thatte, S. (2001). XLANG - Web Services For Business Process Design. Récupéré sur
http://www.gotdotnet.com/team/xml_wsspecs/xlang-c/default.htm
The Workflow Management Coalition. (2008). Final XPDL 2.1 Specification. dans le Rapport de
spécification numéro WFMC-TC-10.
Turver, R. J., & Munro, M. (1994). An early impact analysis technique for software maintenance.
Journal of Software Maintenance:Research and Practice, Volume 6, No. 1, 35-52.
Van Belle, J.-P. (2004). A proposed framework for the analysis and evaluation of business models.
The 2004 annual research conference of the South African institute of computer scientists
and information technologists on IT research in developing countries (SAICSIT '04), (pp.
210-215). South African Institute for Computer Scientists and Information Technologists ,
Republic of South Africa.
van der Aalst, W. (1998). The Application of Petri Nets to Workflow Management. The Journal of
Circuits, Systems and Computers, Vol. 8, No. 1, 21-66.
- 184 -
van der Aalst, W. (1999). Formalization and verification of event-driven process chains.
Information and Software Technology, 41(10), 639-650.
van der Aalst, W. (2001). How to handle dynamic change and capture management information?
An approach based on generic workflow models. Journal of Computer Systems Science
Engineering 15(5).
van der Aalst, W. M. (2007). Challenges in Business Process Analysis. The 9th International
Conference On Enterprise Information Systems (ICEIS'07) (pp. 27-42). Funchal, Madeira:
Springer Berlin Heidelberg.
van der Aalst, W. M., & Song, M. (2004). Mining Social Networks: Uncovering Interaction Patterns
in Business Processes. The 2nd International Conference on Business Process Management
(BPM'04) (pp. 244-260). Potsdam, Germany: Springer Berlin Heidelberg.
Van der Aalst, W. M., Ter Hofstede, A. H., & Weske, M. (2003). Business Process Management: A
Survey. The international conference on Business process management, BPM 2003 (pp. 1–
12). LNCS 2678, 2003. Springer-Verlag Berlin Heidelberg.
van der Aalst, W., & ter Hofstede, A. (2005). YAWL: yet another workflow language. Information
Systems Volume 30, Issue 4, 245-275.
van der Aalst, W., & Van Dongen, B. F. (2002). Discovering Workflow PerformanceModels from
Timed Logs. The International Conference on Engineering and Deployment of Cooperative
Information Systems (EDCIS' 02) (pp. pp. 45-63). Springer Berlin Heidelberg.
van der Aalst, W., Basten, T., Verbeek, H. M., Verkoulen, P. A., & Voorhoeve, M. (1999). Adaptive
workflow - On the interplay between flexibility and support. Filipe, J.; Cordeiro, J.:
Proceedings of the first International Conference on Enterprise Information Systems, Vol.
2, (pp. 353-360). Setúbal, Portugal.
van der Aalst, W., ter Hofstede, A., Kiepuszewski, B., & Barros, A. (2003). Workflow Patterns.
Distributed and Parallel Databases, 14(3):5-51, 5-51.
van Dongen, B. F., & Jansen-Vullers, M. H. (2005). Verification of SAP Reference Models. The 3rd
International Conference On Business Process Management (BPM'05) (pp. 464-469).
Nancy, France: Springer Berlin Heidelberg.
van Dongen, B. F., de Medeiros, A. K., Verbeek, H., Weijters, A. J., & van der Aalst, W. M. (2005).
The ProM Framework: A New Era in Process Mining Tool Support. The 26th International
Conference on Applications and Theory of Petri Nets (ICATPN' 05) (pp. 444-454). Miami,
USA: Springer Berlin Heidelberg.
Vanderfeesten, I. T., Cardoso, J., & Reijers, H. A. (2007). A weighted coupling metric for business
process models. The Workshop of 19th International Conference on Advanced Information
Systems Engineering (CAiSE'07), (pp. 41-44). Trondheim, Norway.
- 185 -
Vanderfeesten, I. T., Reijers, H. A., & van der Alst, W. (2008). Evaluating workflow process designs
using cohesion and coupling metrics. Computers in industry, 420-437.
Vaz, C., & Ferreira, C. (2007). Formal verification of workflow patterns with spin. Technical Report,
April 2007. INESC-ID Tec. Rep. 12.
Vaz, C., & Ferreira, C. (2007). Towards Automated Verification of Web Services. The IADIS
International Conference on WWW/Internet 2007.
Verbeek, E., van Hattem, M., Reijers, H., & de Munk, W. (2005). Protos 7.0: Simulation Made
Accessible. The 26th International Conference On Applications and Theory of Petri Nets
(ICATPN'05) (pp. 465-474). Miami, USA: Springer Berlin Heidelberg.
Verbeek, H., Basten, T., & van der Aalst, W. (2001). Diagnosing Workflow Processes Using Woflan.
THE COMPUTER JOURNAL.
Wagner, G. (2005). Rule Modeling and Markup. Reasoning Web (pp. 251-274). Springer.
Wagner, G., Giurca, A., & Lukichev, S. (2006). A Usable Interchange Format for Rich Syntax Rules
Integrating OCL, RuleML and SWRL (2006). Reasoning on the Web (RoW2006).
Walton, C. D. (2005). Model Checking Agent Dialogues. The 2nd International Workshop on
Declarative Agent Languages and Technologies II (DALT'04) (pp. 132-147). New York, NY,
USA: Springer Berlin Heidelberg.
Wang, J. (1998). Timed Petri Nets: Theory and Application. Springer; 1998 edition .
Wang, S., & Capretz, M. A. (2009). A Dependency Impact Analysis Model for Web Services
Evolution. The IEEE International Conference on Web Services (ICWS'09) (pp. 359-365). Los
Angeles, CA, USA: IEEE Computer Society.
Weber, B., Reichert, M., & Rinderle-Ma, S. (2008). Change patterns and change support features –
Enhancing flexibility in process-aware information systems. Data & Knowledge
Engineering Volume 66 Issue 3, 438-466.
Weber, B., Wild, W., Lauer, M., & Rei, M. (2006). Improving Exception Handling by Discovering
Change Dependencies in Adaptive Process Management Systems. BPM 2006 International
Workshops, BPD,, (pp. 93-104). Vienna, Austria.
Weerawarana, S., Curbera, F., Leymann, F., Storey, T., & Ferguson, D. F. (2005). Web Services
Platform Architecture: SOAP, WSDL, WS-Policy, WS-Addressing, WS-Bpel, WS-Reliable
Messaging and More. Edition Prentice Hall Computer.
Weijters, A. J., & van der Aalst, W. M. (2003). Rediscovering workflow models from event-based
data using little thumb. Journal of Integrated Computer-Aided Engineering, 151-162.
Weske, M. (1998). Flexible modeling and execution of workflow activities. The 31th Annual Hawaii
International Conference on System Sciences (HICSS'98) (pp. 713-722). IEEE Computer
Society.
- 186 -
Weske, M. (2000). Workflow Management Systems: Formal Foundation, Conceptual Design,
Implementation Aspects. University of M•unster, Habil Thesis.
Wolfgang, T. (1989). Computation tree logic and regular -languages. The School/Workshop of
Linear Time, Branching Time and Partial Order in Logics and Models for Concurrency (pp.
690-713). Noordwijkerhout, Netherlands: Springer Berlin Heidelberg.
Wombacher, A., Fankhauser, P., & Neuhold, E. (2004). Transforming BPEL into Annotated
Deterministic Finite State Automata for Service Discovery. The IEEE International
Conference on Web Services (ICWS'04) (pp. 316-323). EE Computer Society.
Wong, B., & Jeffery, R. (1995). Quality Metrics : ISO9126 and Stakeholder Perceptions.
Wong, B., & Jeffery, R. (2001). Cognitive Structures of Software Evaluation: A Means-End Chain
Analysis of Quality. The3rd International Conference on Product Focused Software Process
Improvement (pp. 6-26 ). Kaiserslautern, Germany: Springer Berlin Heidelberg.
Wong, P. Y., & Gibbons, J. (2008). A Process Semantics for BPMN. The 10th International
Conference on Formal Methods and Software Engineering (ICFEM'08) (pp. 355-374).
Kitakyushu-City, Japan: Springer-Verlag Berlin, Heidelberg.
Woodcock, J., & Davies, J. (1996). Using Z: specification, refinement, and proof. Prentice Hall.
Yang, D., & Zhang, S.-s. (2003). Approach for workflow modeling using pi-calculus. Journal of
Zhejiang University Science, 643-650.
Yang, Y., Tan, Q., & Xiao, Y. (2005). Verifying web services composition based on hierarchical
colored petri nets. The 1st international workshop on Interoperability of heterogeneous
information systems (IHIS '05) (pp. 47-54). ACM Press.
Ye, J., Sun, S., Wen, L., & Song, W. (2008). Transformation of BPMN to YAWL. The International
Conference on Computer Science and Software Engineering (CSSE'08), (pp. 354-359).
Wuhan, China.
Yi, X., & Kochut, K. J. (2004). A CP-nets-based Design and Verification Framework for Web Services
Composition. The IEEE International Conference on Web Services (ICWS '04) (pp. 756-760).
IEEE Computer Society.
Yu, T.-L., Goldberg, D. E., Sastry, K., Lima, C. F., & Pelikan, M. (2009). Dependency structure matrix,
genetic algorithms, and effective recombination. Journal of Evolutionary Computation Vo.
17 Issue 4, 595-626.
- 187 -
Zeng, L., Flaxer, D., Chang, H., & Jeng, J.-J. (2002). PLM flow-Dynamic Business Process
Composition and Execution by Rule Inference. The Third International Workshop on
Technologies for E-Services TES '02 (pp. 141-150). Springer-Verlag London.
Zeng, L., Ngu, A., Benatallah, B., & O'Dell, M. (2001). An agent-based approach for supporting
cross-enterprise workflows. The 12th Australasian database conference (ADC'01) (pp.
123-130). IEEE Computer Society.
Zhao, X., & Liu, C. (2013). Version management for business process schema evolution.
Information Systems Volume 38, Issue 8, 1046–1069.
zur Muehlen, M. (2004). Workflow-based process controlling: foundation, design, and application
of workflow-driven process information systems. Process information system.
zur Muehlen, M., & Indulska, M. (2010). Modeling languages for business processes and business
rules: A representational analysis. Information Systems Volume 35, Issue 4, 379-390.
- 188 -