verification des workflow

818 vues

Publié le

une approche pour la transformation et la verification des workflow (cas des regles eca)

Publié dans : Formation
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
818
Sur SlideShare
0
Issues des intégrations
0
Intégrations
5
Actions
Partages
0
Téléchargements
44
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

verification des workflow

  1. 1. CONCEPTION ET MISE EN ŒUVRE D’UNOUTIL DE VÉRIFICATION DES WORKFLOWSEncadreur: Mr. BEKKI Kh.Présentateur: BRAHIM SofianeUniversité IBN KHALDUN – TiaretFaculté des sciences et sciences de l’ingénieurDépartement de l’informatique03 Octobre 2011
  2. 2. PLAN DE TRAVAIL
  3. 3. • WorkFlowDéfinitionDomaines d‘applicationExempleTypologies• Problématiques• La vérification des WorkflowsDéfinitionPrésentation de BEPL et ECA• Les phases de vérificationLanalyse préliminaireLa transformation BPEL vers réseau de PetriLes propriétés à vérifierLa structure de l’outil de vérification• La transformation des règles ECA vers Réseau de PetriLa structuration des règles ECARecherche des Entrées/SortiesLassemblage des règlesRègles de passage ECA vers RdP
  4. 4. Workflow
  5. 5. La modélisation et la gestion informatique de lensembledes tâches à accomplir et des différents acteurs impliquésdans la réalisation dun processus métier. Il permetl’identification des acteurs en précisant leurs rôles et lamanière pour le remplir au mieux.Définition:
  6. 6. Informatique: développement de logicielFinance: les systèmes bancaires, les assurancesMédical: suivi du dossier médical d’un patient ,planification des opérations chirurgicalese-Learning: contrôle continu de l’apprentissageServices Web: composition BPEL qui détermine leprocessus du service.Domaines d‘application:
  7. 7. Workflow de publication de document sur intranetExemple:1- Le rédacteur propose un article auchef de rubrique-2- Le chef de rubrique regarde le documentet le valide-3-Le rédacteur en chef trouve que ledocument possède des élémentsincompatibles avec lactualité et retourne ledocument au rédacteur-4- Le rédacteur revoit sa copie et la soumet auchef de rubrique-5- Le chef de rubrique corrige quelquescoquilles et transmet larticle au rédacteur enchef-6- Le rédacteur en chef valide le documentpour une publication en ligne.
  8. 8. On distingue deux types de Workflow:Le Workflow procédural: correspondant à des processusmétiers connus de lentreprise et faisant lobjet deprocédures préétablies , le cheminement du Workflow estplus ou moins figé ;Le Workflow flexible (ad-hoc): basé sur un modèlecollaboratif dans lequel les acteurs interviennent dans ladécision du cheminement, le cheminement du Workflowest dynamique.Typologies:
  9. 9. Problématiques
  10. 10. × Les WorkFlows sont exposés auxproblèmes de dysfonctionnementLa vérification des Workflows avantl’exécution× Il n’existe pas des modèles devérification pour les Workflowsflexibles à base des règlesLa transformation des Workflowsflexibles vers réseau de Pétri afin depouvoir les vérifier
  11. 11. La vérificationdes Workflows
  12. 12. Un type d’analyse utilisée pour répondre aux questionsqualitatives relatives à un processus Workflow telles que lapossibilité d’exécuter correctement un cas de processus ou lapossibilité d’exécuter deux tâches d’un Workflow dansn’importe quel ordre.Définition
  13. 13. Présentation de BEPL et ECABPEL: (Business Process Execution Language)Fournit une notation XML et une sémantique pour la spécification du comportementdes processus métier basés sur les Web Services. On peut dire que le BPEL est lediagramme dactivité 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). Onpeut résumer ce principe par la proposition suivante : "lorsqu’un événement seproduit, si une condition est remplie, alors une action est exécutée".
  14. 14. Les phases devérification
  15. 15. Lanalyse préliminaire:Dans cette étape on analyse (analyse syntaxique, analyse statique) le fichier BPELquon veut vérifier.• Analyse syntaxique: Cette analyse permet de trouver les erreurs de syntaxe dansle 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.
  16. 16. La transformation BPEL vers réseau dePetri:Dans cette étape nous utilisons un mappage pour la transformation du fichier BPELquon 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 estl’ajout des entrées, et des sorties du processus modélisé c.à.d. les relations avecles 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 desproprié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.
  17. 17. Les propriétés à vérifier• Deadlock: Survient lorsque on atteint un marquage ou on ne peut pas sensibiliserd’autres transitions. C.-à-d. le système se bloque.• Livelock: Un état qui survient lorsque deux ou plusieurs processus changentcontinuellement leurs états en réponse aux changements dans les autresprocé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 aucunetâche à réaliser ou en cours de réalisation. Ce critère garanti l’absence deDeadlock ou de Livelock.• Non-surcharge: Ce critère assure que les tâches incluses dans un modèle deprocessus ont un rôle significatif dans la progression du processus WorkFlow.• Cohérence: Une combinaison des deux principaux critères de correction desWorkFlows (la terminaison propre et la non-surcharge des tâches).
  18. 18. La structure de l’outil de vérification
  19. 19. La transformationdes règles ECA versRéseau de Petri
  20. 20. La structuration des règles ECA:Règle complexeRègles simplesSimplification
  21. 21. Event Condition ActionBegin True bBegin True cb True dc True ed True Ende True EndCoffeeButton True dTeaButton True dMoneySlot.Inserted True ed True BeverageDispensore True BeverageDispensorRecherche des Entrées/Sorties:• Les entrées: sont des variables non initiales et qui nont pas desprédécesseurs,• Et les sorties: sont des variables non finales et qui nont pas des successeurs.Des entréesSortie
  22. 22. Lassemblage des règles:Cette étape consiste à réduire le nombre des règles simples par latransformation vers règles complexes mais toujours en respectant les principessuivants:• Chaque côté gauche de la règle ne peut contenir quune seule entrée et uneseule variable, ou une seule entrée, ou plusieurs variables,• Chaque côté droit de la règle ne peut contenir quune seule sortie et uneseule 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êtreassemblées doivent être assemblées.
  23. 23. Règles de passage ECA vers RdPEventUne placeActionUne place
  24. 24. Un exemple de transformation
  25. 25. La structure de l’outil de transformation
  26. 26. Vérificateur Transformateur

×