2. Contexte
• Busines Process (BP)
– Ensemble de séquences de taches produisant une valeur ajoutée
• Workflow
– Séquence possible de taches (A→B→C)
• Tâche
– Elaboration d’un cahier des charges, réalisation des tests,
annulation d’une commande
2Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
3. Business Process Management
• Modélisation, exécution, optimisation des Business
Process
• Comment exécuter ces Business Process (BP) ?
3Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
10. Orchestration SOA - Faiblesses
Trafic inutile:
Information transitant inutilement par le moteur
d’exécution
Single point of failure:
Moteur d’exécution en panne =
Aspect central du moteur d’exécution et échanges synchrones
Scalabilty:
limitation des performances globales
(goulot d’étranglement)
10Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
11. Problème
Comment est-il possible d’exécuter un
Business Process dans une architecture
distribuée asynchrone ?
11Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
12. Démarche
• Concevoir une architecture distribuée avec
échange de messages asynchrone
• Imaginer l’exécution d’un Business Process
dans une telle architecture
• Trouver une méthode de transformation d’un
Business Process en code qui s’exécute tel
qu’imaginé précédemment
12Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
23. Implémentation: Prototype d’exécution de BP
Phase d’implémentation
• Implémentation des
évènements
• Implémentation des taches
et de leurs agents
• Décomposition du Gateway
en règles métiers
Phase de configuration
• HornetQ Server en mode
Standalone
• Déploiements des Web
Services (Serveur Tomcat)
• Lancer les process de
chaque tâche
23
Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
24. Pour la génération d’une chorégraphie distribuée
MDA: Model Driven Architecture
• Méta-model BPMN 2.0
• Modèle de Business Process
Acceleo : Model to Text
• Configuration du projet Acceleo
• Etude du Méta-modèle EMF
• Phases de génération de code
24
Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
25. Génération de code
• 1ière phase de génération : « generateStartEvent.mt »
– Génération des fichiers d’initialisation de l’exécution
• 2ième phase de génération : « generateTask.mt »
– Génération des tâches distribuées dans l’ED-BPM
• 3ième phase de génération de code : « generateGateway.mt »
– Génération des règles métiers dans le CEP
• 4ième phase de génération de code : « generateEndEvent.mt»
– Génération des fichiers de terminaison d’exécution
• 5ième phase de génération de code : « generateSequenceFlow.mt »
– Générations du code des agents
25
Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
26. Conclusion
• Orchestration centralisée Vs Chorégraphie distribuée
• Transformation du Business Process
• Prototype implémenté et exécuté avec succès
• Automatisation de la transformation (M2T)
26
Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion
27. Perspectives
• Ajouts d’autres types d’éléments du standard BPMN
• Ajouts d’autres types d’évènements (complexes)
• Évolution du M2T
• Analyse des performances à grande échelle
27
Contexte - Solution existante - Problème - Solution - Implémentation - Génération - Conclusion