SlideShare une entreprise Scribd logo
1  sur  28
CONCEPTION ET MISE EN ŒUVRE D’UN
OUTIL DE VÉRIFICATION DES WORKFLOWS
Encadreur: Mr. BEKKI Kh.
Présentateur: BRAHIM Sofiane
Université IBN KHALDUN – Tiaret
Faculté des sciences et sciences de l’ingénieur
Département de l’informatique
03 Octobre 2011
PLAN DE TRAVAIL
• WorkFlow
Définition
Domaines d‘application
Exemple
Typologies
• Problématiques
• La vérification des Workflows
Définition
Présentation de BEPL et ECA
• Les phases de vérification
L'analyse préliminaire
La transformation BPEL vers réseau de Petri
Les propriétés à vérifier
La structure de l’outil de vérification
• La transformation des règles ECA vers Réseau de Petri
La structuration des règles ECA
Recherche des Entrées/Sorties
L'assemblage des règles
Règles de passage ECA vers RdP
Workflow
La modélisation et la gestion informatique de l'ensemble
des tâches à accomplir et des différents acteurs impliqués
dans la réalisation d'un processus métier. Il permet
l’identification des acteurs en précisant leurs rôles et la
manière pour le remplir au mieux.
Définition:
Informatique: développement de logiciel
Finance: les systèmes bancaires, les assurances
Médical: suivi du dossier médical d’un patient ,
planification des opérations chirurgicales
e-Learning: contrôle continu de l’apprentissage
Services Web: composition BPEL qui détermine le
processus du service.
Domaines d‘application:
Workflow de publication de document sur intranet
Exemple:
1- Le rédacteur propose un article au
chef de rubrique
-2- Le chef de rubrique regarde le document
et le valide
-3-Le rédacteur en chef trouve que le
document possède des éléments
incompatibles avec l'actualité et retourne le
document au rédacteur
-4- Le rédacteur revoit sa copie et la soumet au
chef de rubrique
-5- Le chef de rubrique corrige quelques
coquilles et transmet l'article au rédacteur en
chef
-6- Le rédacteur en chef valide le document
pour une publication en ligne.
On distingue deux types de Workflow:
Le Workflow procédural: correspondant à des processus
métiers connus de l'entreprise et faisant l'objet de
procédures préétablies , le cheminement du Workflow est
plus ou moins figé ;
Le Workflow flexible (ad-hoc): basé sur un modèle
collaboratif dans lequel les acteurs interviennent dans la
décision du cheminement, le cheminement du Workflow
est dynamique.
Typologies:
Problématiques
× Les WorkFlows sont exposés aux
problèmes de dysfonctionnement
La vérification des Workflows avant
l’exécution
× Il n’existe pas des modèles de
vérification pour les Workflows
flexibles à base des règles
La transformation des Workflows
flexibles vers réseau de Pétri afin de
pouvoir les vérifier
La vérification
des Workflows
Un type d’analyse utilisée pour répondre aux questions
qualitatives relatives à un processus Workflow telles que la
possibilité d’exécuter correctement un cas de processus ou la
possibilité d’exécuter deux tâches d’un Workflow dans
n’importe quel ordre.
Définition
Présentation de BEPL et ECA
BPEL: (Business Process Execution Language)
Fournit une notation XML et une sémantique pour la spécification du comportement
des processus métier basés sur les Web Services. On peut dire que le BPEL est le
diagramme d'activité du Web service. Ainsi, que le WSDL est le diagramme de classe.
ECA: (Evénement-Condition-Action)
Les règles actives ou ECA sont de la forme Evénement-Condition-Action (ECA). On
peut résumer ce principe par la proposition suivante : "lorsqu’un événement se
produit, si une condition est remplie, alors une action est exécutée".
Les phases de
vérification
L'analyse préliminaire:
Dans cette étape on analyse (analyse syntaxique, analyse statique) le fichier BPEL
qu'on veut vérifier.
• Analyse syntaxique: Cette analyse permet de trouver les erreurs de syntaxe dans
le fichier BPEL afin de pouvoir les corriger.
• Analyse statique: Cette analyse permet de trouver des erreurs statiques c.-à-d.
des erreurs de manque de balises.
La transformation BPEL vers réseau de
Petri:
Dans cette étape nous utilisons un mappage pour la transformation du fichier BPEL
qu'on veut vérifier vers deux fichiers:
• Un Open WorkFlow net: C’est un type de réseau de Petri, l’idée générale est
l’ajout des entrées, et des sorties du processus modélisé c.à.d. les relations avec
les autres services. Ce fichier est utilisé pour la vérification de la contrôlabilité.
• Un réseau de pétri simple: ce qui nous permet de faire la vérification des
propriétés Deadlock, Livelock. Le réseau de pétri généré et un Wf-Net.
Wf-Net:
Un réseau de Petri (N,M0) est un WF-net si et seulement si :
1. N admet une seule place source i (i.e.•i =Ø) dite place initiale.
2. N admet une seule place puit f (i.e.f• = Ø) dite place finale.
3. Pour chaque nœud n∈P∪T , il existe un chemin de i à n et un chemin de n à f.
Les propriétés à vérifier
• Deadlock: Survient lorsque on atteint un marquage ou on ne peut pas sensibiliser
d’autres transitions. C.-à-d. le système se bloque.
• Livelock: Un état qui survient lorsque deux ou plusieurs processus changent
continuellement leurs états en réponse aux changements dans les autres
procédés.
• Contrôlabilité: Un réseau de Petri est contrôlable si son graphe d’interaction (ig)
n’est pas vide.
• Terminaison propre: Lorsque le cas de processus se termine, il n’y plus aucune
tâche à réaliser ou en cours de réalisation. Ce critère garanti l’absence de
Deadlock ou de Livelock.
• Non-surcharge: Ce critère assure que les tâches incluses dans un modèle de
processus ont un rôle significatif dans la progression du processus WorkFlow.
• Cohérence: Une combinaison des deux principaux critères de correction des
WorkFlows (la terminaison propre et la non-surcharge des tâches).
La structure de l’outil de vérification
La transformation
des règles ECA vers
Réseau de Petri
La structuration des règles ECA:
Règle complexe
Règles simples
Simplification
Event Condition Action
Begin True b
Begin True c
b True d
c True e
d True End
e True End
CoffeeButton True d
TeaButton True d
MoneySlot.Inserted True e
d True BeverageDispensor
e True BeverageDispensor
Recherche des Entrées/Sorties:
• Les entrées: sont des variables non initiales et qui n'ont pas des
prédécesseurs,
• Et les sorties: sont des variables non finales et qui n'ont pas des successeurs.
Des entrées
Sortie
L'assemblage des règles:
Cette étape consiste à réduire le nombre des règles simples par la
transformation vers règles complexes mais toujours en respectant les principes
suivants:
• Chaque côté gauche de la règle ne peut contenir qu'une seule entrée et une
seule variable, ou une seule entrée, ou plusieurs variables,
• Chaque côté droit de la règle ne peut contenir qu'une seule sortie et une
seule variable, ou une seule sortie, ou plusieurs variables.
• Une règle ne doit pas contenir une entrée et une sortie à la fois.
• Toutes les règles qui respectent les principes mentionnés et capables d'être
assemblées doivent être assemblées.
Règles de passage ECA vers RdP
EventUne place
ActionUne place
Un exemple de transformation
La structure de l’outil de transformation
Vérificateur Transformateur

Contenu connexe

Tendances

2008 10 01 Bpm Conference
2008 10 01 Bpm Conference2008 10 01 Bpm Conference
2008 10 01 Bpm Conference
Chaineum
 
C:\Fakepath\Ibs 2009 03 MéThodologie Erp
C:\Fakepath\Ibs 2009 03 MéThodologie ErpC:\Fakepath\Ibs 2009 03 MéThodologie Erp
C:\Fakepath\Ibs 2009 03 MéThodologie Erp
guestb4e614
 
Cas integration open_erp
Cas integration open_erpCas integration open_erp
Cas integration open_erp
Joubi Aaziz
 
Modeliosoft@md day2011
Modeliosoft@md day2011Modeliosoft@md day2011
Modeliosoft@md day2011
MDDAY11
 

Tendances (20)

Formation BPM Activiti Monaco Telecom
Formation BPM Activiti Monaco TelecomFormation BPM Activiti Monaco Telecom
Formation BPM Activiti Monaco Telecom
 
Webinar activiti
Webinar activitiWebinar activiti
Webinar activiti
 
BPM & Workflow
BPM & WorkflowBPM & Workflow
BPM & Workflow
 
BPMN : Business Process Modelling Notation
BPMN : Business Process Modelling NotationBPMN : Business Process Modelling Notation
BPMN : Business Process Modelling Notation
 
BPM - Business Process Management
BPM - Business Process ManagementBPM - Business Process Management
BPM - Business Process Management
 
Une Introduction Au Bpm 1.1
Une Introduction Au Bpm 1.1Une Introduction Au Bpm 1.1
Une Introduction Au Bpm 1.1
 
BonitaSoft, la solution BPM
BonitaSoft, la solution BPMBonitaSoft, la solution BPM
BonitaSoft, la solution BPM
 
Performance opérationnelle via demarche BPM
Performance opérationnelle via demarche BPMPerformance opérationnelle via demarche BPM
Performance opérationnelle via demarche BPM
 
Webinar Bizagi BPM - Etude de cas client
Webinar Bizagi BPM - Etude de cas clientWebinar Bizagi BPM - Etude de cas client
Webinar Bizagi BPM - Etude de cas client
 
Conception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VASConception et mise en place d'un Workflow du département VAS
Conception et mise en place d'un Workflow du département VAS
 
ERP, Pret A Implanter Mode D’Emploi Cours 10
ERP, Pret A Implanter  Mode D’Emploi Cours 10ERP, Pret A Implanter  Mode D’Emploi Cours 10
ERP, Pret A Implanter Mode D’Emploi Cours 10
 
2008 10 01 Bpm Conference
2008 10 01 Bpm Conference2008 10 01 Bpm Conference
2008 10 01 Bpm Conference
 
La gestion des processus d'affaires -Un survol de sa pratique et de ses techn...
La gestion des processus d'affaires-Un survol de sa pratique et de ses techn...La gestion des processus d'affaires-Un survol de sa pratique et de ses techn...
La gestion des processus d'affaires -Un survol de sa pratique et de ses techn...
 
Cartographie Métier : méthodologie
Cartographie Métier : méthodologieCartographie Métier : méthodologie
Cartographie Métier : méthodologie
 
La mise en œuvre d’un ERP
La mise en œuvre d’un ERPLa mise en œuvre d’un ERP
La mise en œuvre d’un ERP
 
Prerequisites In ERP Projects Paris Mines 2002
Prerequisites In ERP Projects Paris Mines 2002Prerequisites In ERP Projects Paris Mines 2002
Prerequisites In ERP Projects Paris Mines 2002
 
C:\Fakepath\Ibs 2009 03 MéThodologie Erp
C:\Fakepath\Ibs 2009 03 MéThodologie ErpC:\Fakepath\Ibs 2009 03 MéThodologie Erp
C:\Fakepath\Ibs 2009 03 MéThodologie Erp
 
Cas integration open_erp
Cas integration open_erpCas integration open_erp
Cas integration open_erp
 
Modeliosoft@md day2011
Modeliosoft@md day2011Modeliosoft@md day2011
Modeliosoft@md day2011
 
Togaf
TogafTogaf
Togaf
 

En vedette

Cops nancy jerome
Cops nancy jeromeCops nancy jerome
Cops nancy jerome
Sanaa EL
 

En vedette (6)

Orchestre de services
Orchestre de servicesOrchestre de services
Orchestre de services
 
Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOA
 
Introduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPELIntroduction and Advanced Concepts of BPEL
Introduction and Advanced Concepts of BPEL
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Cops nancy jerome
Cops nancy jeromeCops nancy jerome
Cops nancy jerome
 
Presentation bpel
Presentation bpelPresentation bpel
Presentation bpel
 

Similaire à verification des workflow

Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Guillaume Chevalier
 
Business process execution language
Business process execution languageBusiness process execution language
Business process execution language
Bilel Abed
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
ALTER WAY
 
5-analyse_fonctionnelle.ppt
5-analyse_fonctionnelle.ppt5-analyse_fonctionnelle.ppt
5-analyse_fonctionnelle.ppt
mapiAyoub
 

Similaire à verification des workflow (20)

14_PM_chapitre3_Modelisation pour modélisation
14_PM_chapitre3_Modelisation pour modélisation14_PM_chapitre3_Modelisation pour modélisation
14_PM_chapitre3_Modelisation pour modélisation
 
OpenESB et BPEL
OpenESB et BPELOpenESB et BPEL
OpenESB et BPEL
 
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
Python appliqué en apprentissage automatique (Applied Python in Machine Learn...
 
projet_prog5.pptx
projet_prog5.pptxprojet_prog5.pptx
projet_prog5.pptx
 
Tp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELTp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPEL
 
spring.pdf
spring.pdfspring.pdf
spring.pdf
 
1327415.ppt
1327415.ppt1327415.ppt
1327415.ppt
 
Business process execution language
Business process execution languageBusiness process execution language
Business process execution language
 
Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5Les nouveautés du Framework .NET 4.5
Les nouveautés du Framework .NET 4.5
 
Chp4 - Composition, Orchestration et Choregraphie de services
Chp4 - Composition, Orchestration et Choregraphie de servicesChp4 - Composition, Orchestration et Choregraphie de services
Chp4 - Composition, Orchestration et Choregraphie de services
 
20111004 02 - Présentation Sqale
20111004 02 - Présentation Sqale20111004 02 - Présentation Sqale
20111004 02 - Présentation Sqale
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
Master's defence presentation : Architecture Basée Agents Pour la Prise en Ch...
 
Test de logiciels
Test de logiciels Test de logiciels
Test de logiciels
 
Definitiondesbesoinsuml
DefinitiondesbesoinsumlDefinitiondesbesoinsuml
Definitiondesbesoinsuml
 
Integration de donnees_etl
Integration de donnees_etlIntegration de donnees_etl
Integration de donnees_etl
 
5-analyse_fonctionnelle.ppt
5-analyse_fonctionnelle.ppt5-analyse_fonctionnelle.ppt
5-analyse_fonctionnelle.ppt
 
FIP_pl-sql.pdf
FIP_pl-sql.pdfFIP_pl-sql.pdf
FIP_pl-sql.pdf
 
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelHa zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie Trudel
 
Soutenance séminaire bibliographique
Soutenance séminaire bibliographiqueSoutenance séminaire bibliographique
Soutenance séminaire bibliographique
 

Dernier

Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 

Dernier (19)

Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 

verification des workflow

  • 1.
  • 2. CONCEPTION ET MISE EN ŒUVRE D’UN OUTIL DE VÉRIFICATION DES WORKFLOWS Encadreur: Mr. BEKKI Kh. Présentateur: BRAHIM Sofiane Université IBN KHALDUN – Tiaret Faculté des sciences et sciences de l’ingénieur Département de l’informatique 03 Octobre 2011
  • 4. • WorkFlow Définition Domaines d‘application Exemple Typologies • Problématiques • La vérification des Workflows Définition Présentation de BEPL et ECA • Les phases de vérification L'analyse préliminaire La transformation BPEL vers réseau de Petri Les propriétés à vérifier La structure de l’outil de vérification • La transformation des règles ECA vers Réseau de Petri La structuration des règles ECA Recherche des Entrées/Sorties L'assemblage des règles Règles de passage ECA vers RdP
  • 6. La modélisation et la gestion informatique de l'ensemble des tâches à accomplir et des différents acteurs impliqués dans la réalisation d'un processus métier. Il permet l’identification des acteurs en précisant leurs rôles et la manière pour le remplir au mieux. Définition:
  • 7. Informatique: développement de logiciel Finance: les systèmes bancaires, les assurances Médical: suivi du dossier médical d’un patient , planification des opérations chirurgicales e-Learning: contrôle continu de l’apprentissage Services Web: composition BPEL qui détermine le processus du service. Domaines d‘application:
  • 8. Workflow de publication de document sur intranet Exemple: 1- Le rédacteur propose un article au chef de rubrique -2- Le chef de rubrique regarde le document et le valide -3-Le rédacteur en chef trouve que le document possède des éléments incompatibles avec l'actualité et retourne le document au rédacteur -4- Le rédacteur revoit sa copie et la soumet au chef de rubrique -5- Le chef de rubrique corrige quelques coquilles et transmet l'article au rédacteur en chef -6- Le rédacteur en chef valide le document pour une publication en ligne.
  • 9. On distingue deux types de Workflow: Le Workflow procédural: correspondant à des processus métiers connus de l'entreprise et faisant l'objet de procédures préétablies , le cheminement du Workflow est plus ou moins figé ; Le Workflow flexible (ad-hoc): basé sur un modèle collaboratif dans lequel les acteurs interviennent dans la décision du cheminement, le cheminement du Workflow est dynamique. Typologies:
  • 11. × Les WorkFlows sont exposés aux problèmes de dysfonctionnement La vérification des Workflows avant l’exécution × Il n’existe pas des modèles de vérification pour les Workflows flexibles à base des règles La transformation des Workflows flexibles vers réseau de Pétri afin de pouvoir les vérifier
  • 13. Un type d’analyse utilisée pour répondre aux questions qualitatives relatives à un processus Workflow telles que la possibilité d’exécuter correctement un cas de processus ou la possibilité d’exécuter deux tâches d’un Workflow dans n’importe quel ordre. Définition
  • 14. Présentation de BEPL et ECA BPEL: (Business Process Execution Language) Fournit une notation XML et une sémantique pour la spécification du comportement des processus métier basés sur les Web Services. On peut dire que le BPEL est le diagramme d'activité du Web service. Ainsi, que le WSDL est le diagramme de classe. ECA: (Evénement-Condition-Action) Les règles actives ou ECA sont de la forme Evénement-Condition-Action (ECA). On peut résumer ce principe par la proposition suivante : "lorsqu’un événement se produit, si une condition est remplie, alors une action est exécutée".
  • 16. L'analyse préliminaire: Dans cette étape on analyse (analyse syntaxique, analyse statique) le fichier BPEL qu'on veut vérifier. • Analyse syntaxique: Cette analyse permet de trouver les erreurs de syntaxe dans le fichier BPEL afin de pouvoir les corriger. • Analyse statique: Cette analyse permet de trouver des erreurs statiques c.-à-d. des erreurs de manque de balises.
  • 17. La transformation BPEL vers réseau de Petri: Dans cette étape nous utilisons un mappage pour la transformation du fichier BPEL qu'on veut vérifier vers deux fichiers: • Un Open WorkFlow net: C’est un type de réseau de Petri, l’idée générale est l’ajout des entrées, et des sorties du processus modélisé c.à.d. les relations avec les autres services. Ce fichier est utilisé pour la vérification de la contrôlabilité. • Un réseau de pétri simple: ce qui nous permet de faire la vérification des propriétés Deadlock, Livelock. Le réseau de pétri généré et un Wf-Net. Wf-Net: Un réseau de Petri (N,M0) est un WF-net si et seulement si : 1. N admet une seule place source i (i.e.•i =Ø) dite place initiale. 2. N admet une seule place puit f (i.e.f• = Ø) dite place finale. 3. Pour chaque nœud n∈P∪T , il existe un chemin de i à n et un chemin de n à f.
  • 18. Les propriétés à vérifier • Deadlock: Survient lorsque on atteint un marquage ou on ne peut pas sensibiliser d’autres transitions. C.-à-d. le système se bloque. • Livelock: Un état qui survient lorsque deux ou plusieurs processus changent continuellement leurs états en réponse aux changements dans les autres procédés. • Contrôlabilité: Un réseau de Petri est contrôlable si son graphe d’interaction (ig) n’est pas vide. • Terminaison propre: Lorsque le cas de processus se termine, il n’y plus aucune tâche à réaliser ou en cours de réalisation. Ce critère garanti l’absence de Deadlock ou de Livelock. • Non-surcharge: Ce critère assure que les tâches incluses dans un modèle de processus ont un rôle significatif dans la progression du processus WorkFlow. • Cohérence: Une combinaison des deux principaux critères de correction des WorkFlows (la terminaison propre et la non-surcharge des tâches).
  • 19. La structure de l’outil de vérification
  • 20. La transformation des règles ECA vers Réseau de Petri
  • 21. La structuration des règles ECA: Règle complexe Règles simples Simplification
  • 22. Event Condition Action Begin True b Begin True c b True d c True e d True End e True End CoffeeButton True d TeaButton True d MoneySlot.Inserted True e d True BeverageDispensor e True BeverageDispensor Recherche des Entrées/Sorties: • Les entrées: sont des variables non initiales et qui n'ont pas des prédécesseurs, • Et les sorties: sont des variables non finales et qui n'ont pas des successeurs. Des entrées Sortie
  • 23. L'assemblage des règles: Cette étape consiste à réduire le nombre des règles simples par la transformation vers règles complexes mais toujours en respectant les principes suivants: • Chaque côté gauche de la règle ne peut contenir qu'une seule entrée et une seule variable, ou une seule entrée, ou plusieurs variables, • Chaque côté droit de la règle ne peut contenir qu'une seule sortie et une seule variable, ou une seule sortie, ou plusieurs variables. • Une règle ne doit pas contenir une entrée et une sortie à la fois. • Toutes les règles qui respectent les principes mentionnés et capables d'être assemblées doivent être assemblées.
  • 24. Règles de passage ECA vers RdP EventUne place ActionUne place
  • 25. Un exemple de transformation
  • 26. La structure de l’outil de transformation
  • 27.