La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Analyse d’une solution de gestion de processus

Présentations similaires


Présentation au sujet: "Analyse d’une solution de gestion de processus"— Transcription de la présentation:

1 Analyse d’une solution de gestion de processus
ACube moteur workflow Analyse d’une solution de gestion de processus Présenté par : Eric Bonin Benjamin Fuentes Thomas Laborde Vivien Ruiz

2 Sommaire Introduction Définition, concept d’un workflow
définition – terminologie principes de base notations, langages, projet modèle de référence choix effectué Intégration de jBPM Architecture générale API de jBPM IHM Implémentations implémentation simple d’une instance d’un processus implémentation de plusieurs instances de plusieurs processus ACube Démonstration ACube - présentation du projet GL Mercredi 30 janvier 2008

3 Introduction – Acube Plateforme de développement unifiée
But du projet : ajouter de nouvelles fonctionnalités aux frameworks existants framework ergonomique HTML, CSS, Javascript, AJAX framework serveur J2EE StrutsCX Projet GL : intégrer à ACube (A3) un module permettant de gérer des processus ACube - présentation du projet GL Mercredi 30 janvier 2008

4 Rappel des besoins Intégrer côté framework serveur J2EE un moteur de gestion de processus (ou workflow) Mettre en place côté framework ergonomique une liste de processus accessibles aux utilisateurs Permettre aux utilisateurs d’instancier des processus et de suivre leur avancement Offrir aux administrateurs la possibilité de créer facilement des processus sous forme de diagrammes d’état-transition ACube - présentation du projet GL Mercredi 30 janvier 2008

5 Cas d’usage ACube - présentation du projet GL Mercredi 30 janvier 2008
IDE Création d’un diagramme d’état-transition Processus enregistré au format XML Moteur de gestion de processus Liste des processus instanciables Liste des processus instanciés Liste des actions possibles sur un processus ACube - présentation du projet GL Mercredi 30 janvier 2008

6 Définition d’un workflow
Flux d’information au sein d’une organisation Modélisation et gestion informatique d’ensembles de tâches à accomplir Le workflow définit un circuit de validation Workflow => gestion informatisée de processus métier ACube - présentation du projet GL Mercredi 30 janvier 2008

7 Avantages d’un workflow
Permet d’assurer un suivi de tâches à effectuer en identifiant les acteurs et leurs rôles Meilleur contrôle de processus Amélioration des services aux utilisateurs Flexibilité accrue Amélioration des processus métier ACube - présentation du projet GL Mercredi 30 janvier 2008

8 Workflow - Terminologie
Processus : ensemble d’activités, équivalent au graphe d’état-transition Activité : unité atomique de travail, équivalent à un nœud du graphe d’état-transition Transition : dépendance exprimant une contrainte d’ordre entre deux activités, équivalent à une arête du graphe d’état- transition ACube - présentation du projet GL Mercredi 30 janvier 2008

9 Workflow patterns Basic Control Flow Patterns
Advanced Branching and Synchronization Patterns Multiple Instance Patterns State-based Patterns Cancellation and Force Completion Patterns Iteration Patterns Termination Patterns Trigger Patterns ACube - présentation du projet GL Mercredi 30 janvier 2008 9 9

10 Séquence Exécution de deux activités ou plus en séquence 10
ACube - présentation du projet GL Mercredi 30 janvier 2008 10 10

11 Séparation en parallèle
Exécution de deux activités ou plus dans n'importe quel ordre ou en parallèle ACube - présentation du projet GL Mercredi 30 janvier 2008 11 11

12 Synchronisation Synchronise deux activités ou plus qui peuvent être exécutées dans n'importe quel ordre ou en parallèle Les activités suivantes ne peuvent pas être lancées tant que les activités précédentes ne sont pas accomplies Barrière de synchronisation ACube - présentation du projet GL Mercredi 30 janvier 2008 12 12

13 Synchronisation (2) 13 ACube - présentation du projet GL
Mercredi 30 janvier 2008 13 13

14 Choix exclusif Choisir un chemin d'exécution parmi plusieurs choix
Basé sur une condition valide quand l'exécution du processus recherche le bon choix ACube - présentation du projet GL Mercredi 30 janvier 2008 14 14

15 Simple fusion Attendre qu'une activité parmi un ensemble d'activités arrive à terme avant de continuer Une seule activité sera exécutée Typiquement, ces activités proviennent de différents chemins exclusifs ACube - présentation du projet GL Mercredi 30 janvier 2008 15 15

16 Simple fusion (2) Site très complet - référence dans le monde des workflow Modélisation mathématique des workflow ACube - présentation du projet GL Mercredi 30 janvier 2008 16 16

17 Notations BPMN : Business Process Modeling Notation, développé par BPMI et soutenu par OMG UML : Unified Modeling Language, diagramme d’activité Grafcet : diagramme d’état-transition ACube - présentation du projet GL Mercredi 30 janvier 2008

18 Langages BPML : Business Process Modeling Language (organisation BPMI)
BPDM : Business Process Definition Metamodel, par OMG (basé sur XMI) BPEL : Business Process Execution Language, par IBM et Microsoft XPDL : XML Process Definition Language, standard de la WfMC (Workflow Management Coalition) ACube - présentation du projet GL Mercredi 30 janvier 2008 18 18

19 Langages (2) YAWL : Yet Another Workflow Language, développé par le groupe BPM du QUT (Queensland University of Technology) Wf-XML : basé sur XML, par la WfMC ACube - présentation du projet GL Mercredi 30 janvier 2008 19 19

20 WebSphere MQ Workflow (IBM)
Les projets Notation Langage WebSphere MQ Workflow (IBM) FDL WS-BPEL Oracle BPEL Designer BPEL Orchestra (Nova) Bonita (Bull et Inria) XPDL jBPM (jBoss) BPMN JPDL (ex-jBPM) PageFlow XPDL (en projet) eBPMN (Soyatec) XMI jPED (Wf MOpen) XML YAWL (groupe BPM du QUT) Spring Web Flow ACube - présentation du projet GL Mercredi 30 janvier 2008 20 20

21 Modèle de référence 21 ACube - présentation du projet GL
Mercredi 30 janvier 2008 21 21

22 Choix effectué Beaucoup de standard sur les workflow mais très peu utilisés et souvent très différents les uns des autres Difficulté d’en choisir un en particulier, chacun vantant ses mérites Premiers tests : l’installation, la prise en main et la documentation Au final, nous choisirons jBPM de jBoss pour sa qualité d’installation (plugin eclipse) et la documentation de son API Bonita d’IBM n’a pu être approfondi par manque de temps ACube - présentation du projet GL Mercredi 30 janvier 2008 22 22

23 Architecture générale
ACube - présentation du projet GL Mercredi 30 janvier 2008 23 23

24 API de jBPM 24 ACube - présentation du projet GL
Mercredi 30 janvier 2008 24 24

25 IHM Nécessité d’une Interface Homme- Machine pour décrire le fonctionnement de l’application Maquettes simples Partiels de page .jsp Quelques exemples tout de suite … ACube - présentation du projet GL Mercredi 30 janvier 2008 25 25

26 Listing des processus 26 ACube - présentation du projet GL
Mercredi 30 janvier 2008 26 26

27 Détail d’une instance d’un processus
ACube - présentation du projet GL Mercredi 30 janvier 2008 27 27

28 Listing des tâches à effectuer
ACube - présentation du projet GL Mercredi 30 janvier 2008 28 28

29 Création simple d’un processus
ACube - présentation du projet GL Mercredi 30 janvier 2008 29 29

30 Création simple d’un processus (2)
ACube - présentation du projet GL Mercredi 30 janvier 2008 30 30

31 Implémentation d’une instance d’un processus
Parsing du fichier XML en utilisant les bibliothèques fournies par jBoss Création d’une instance à partir du parsing du XML Déplacement dans le graphe d’état-transition par envoi de signaux à l’instance, signaux paramétrés par le nom des transitions lorsque plusieurs choix sont disponibles Possibilité de connaître l’état du processus : nom du nœud du graphe actuellement visité liste des transitions partantes et arrivantes sur le nœud Création d’un war et déploiement de l’application sur Tomcat : inclusion des bibliothèques de jBoss ACube - présentation du projet GL Mercredi 30 janvier 2008 31 31

32 Implémentation de plusieurs instances de plusieurs processus
Un processus peut avoir plusieurs instances de démarrées : liste de ses instances Chaque processus est identifié par son id et son nom Chaque instance provient d’un processus et est identifiée par son id Problème avec la configuration de la persistance des objets (Hibernate & Acube) ACube - présentation du projet GL Mercredi 30 janvier 2008 32 32

33 La solution de secours Objet Context ignoré et utilisation abusive de l’objet Session Passage lourd de bean en Session (liste de bean parfois) Solution qui marche Solution à remplacer dans une future reprise du projet par une gestion du contexte dans Acube ACube - présentation du projet GL Mercredi 30 janvier 2008 33 33

34 Démonstrations 34 ACube - présentation du projet GL
Mercredi 30 janvier 2008 34 34


Télécharger ppt "Analyse d’une solution de gestion de processus"

Présentations similaires


Annonces Google