Bpmn 2.0

De EduTech Wiki
Aller à la navigation Aller à la recherche

Cet article est en construction: un auteur est en train de le modifier.

En principe, le ou les auteurs en question devraient bientôt présenter une meilleure version.


Introduction

Business Process Model and Notation (BPMN) est une représentation graphique pour la spécification des
processus métier dans un workflow. BPMN 1.0 etait un projet initié par Business Process Management
Initiative (BPMI) qui fusionna en 2005 avec l'Object Management Group (OMG). L'OMG présenta en Janvier
2011 le nouveau standard BPMN 2.0 succèdant à BPMN 1.2.

“BPMN est de facto le standard pour représenter d'une manière graphique très expressive les processus qui se produisent dans pratiquement tous les types d'organisation, des recettes de cuisine au processus d'affectation du prix Nobel, de la gestion des incidents aux systèmes de vote électroniques, ou encore les procédures de réservation de voyages, pour n'en nommer que quelques-uns.” (Chinosi and Trombetta, 2012) ( (Traduit de l'anglais par Dacostj7)

exemple de modélisation d'un processus de commande avec BPMN


Selon la norme BPMN publié par l'OMG : “L'objectif principal de BPMN 2.0 est de fournir une notation qui est facilement compréhensible par tous les utilisateurs professionnels, des analystes métier qui créent la version initiale du processus, aux développeurs techniques chargés de l'application de la technologie qui va exécuter ces processus, et finalement, les personnes qui permettront de gérer et de contrôler ces processus. Ainsi, BPMN crée un pont standardisé pour l'écart entre la conception des processus d'affaires et l'implémentation des processus. Un autre objectif, mais non moins important, est de s'assurer que les langages XML conçus pour l'exécution des processus métiers, tels que WSBPEL (Web Services commerciaux Process Execution Language), peuvent être visualisées avec une notation axé sur les processus métiers.” (Traduit de l'anglais par Dacostj7)

Ambitions BPMN 2.0 et différence avec BPMN 1.2

BPMN 1.2 est une notation grahique non executable. Des solutions plus ou moins formelles se sont développées pour implémenter les modèles BPMN. Des solution de convertion vers d'autre langage executable se sont développées avec plus ou moins de réussite. La plus part du temps la solution consiste à passer par le langage Business Process Execution Language (BPEL), un langage XML executable. Plusieurs outils commerciaux BPMN proposent de compiler les diagrammes vers un BPEL executable. Cependant cette solution est souvent partielle et peut opérationelle. Il semble que certaine modélisation BPMN ne peuvent être convertie vers BPEL notamment car la définition des tâches humaines devient problématique.

BPMN 2.0 quant à lui, évolue vers un schéma d'échange standard basé sur XML permettant l'échange de modèles exécutables. BPMN 2.0 a la volonté de devenir un langage de modélisation exécutable en remplacement de BPEL.

“BPMN 2.0 étend la portée et les capacités de le BPMN 1.2 dans plusieurs domaines : il officialise l'exécution sémantique pour tous les éléments BPMN, définit un mécanisme d'extensibilité pour les deux extensions du modèle de processus et d'extensions graphiques, affine la composition et la corrélation d'événements, étend la définition des interactions humaines, définit Chorégraphie et modèles de conversation (Un pas en avant pour un meilleur modélisation des interactions ), et résout également les bien connu incohérences et les ambiguïtés de BPMN 1.2.” (Chinosi and Trombetta, 2012 traduit de l'anglais par Dacostj7)

Au final Bpmn 2.0 ajoute par rapport à la version prcédente les points suivants (librement traduit et adapté depuis Mendling, J., Weidlich, M., & Weske, M. (2010). Business Process Modeling Notation: Second International Workshop par Dacostj7  :

  • Un métamodèle normalisé et un format de sérialisation pour BPMN, qui permet aux utilisateurs d'échanger des modèles BPMN entre les outils de différents fournisseurs.
  • Une sémantique d'exécution normalisées pour BPMN, qui va permettre aux fournisseurs logiciels de implémenter des moteurs d'exécution interopérable pour les processus métier.
  • Un format d'échange graphique, permettant aux utilisateurs d'échanger les informations graphique d'un diagramme de processus métiers
  • Une notation étendue pour les interactions inter-organisationnels (également connu sous le nom de chorégraphies process), qui permettra de créer de nouveau cas d'utilisation pour les outils automatisés de soutien pour les processus qui impliquent plusieurs partenaires.
  • Un processus de transfert détaillé de BPMN pour WS-BPEL, montrant l'alignement de BPMN avec les outils et les normes existants
  • Certains éléments de modélisation supplémentaires pour des processus tels les évenements et sous-processus non-interrupus.

BPMN dans l'éducation ?

Outils et execution de code

4 type de conformité BPMN 2.0

Il existe de très nombreux outils pour modéliser des workflows BPMN, cependant certains se réclament de la norme BPMN 2.0 mais ne le sont pas dans les faits, d'autres n'implémentent qu'une partie de la norme BPMN 2.0.


La spécification BPMN 2.0définit quatre types de conformité à savoir :

     1.Conformité de modélisation de processus / Process Modeling Conformance, 
     2.Conformité d'execution de processus / Process Execution Conformance, 
     3.Conformité d'execution BPEL / BPEL Process Execution Conformance 
     4.Conformité de modélisation Choreographies processus / Choreography Modeling Conformance.

Pour chacun de ces 4 points la norme définit un certain nombre de spécification que tout logiciel doit impérativement remplir s'il veut se réclamer de l'un ou de l'ensemble des 4 type de conformité définit dans la norme BPMN 2.0.

En pratique il est difficile de savoir si un logiciel remplie les 4 type de conformité, la documentation logiciel et la publicité sont rarement aussi précise. La plus part du temps les fournisseurs présente leur stratégie de développement, la vision dans laquelle leur produit s'inscrit, sans toutefois faire référence à la norme officiel BPMN 2.0.

Deux approches concurrentes concernant l'execution BPMN

Basiquement deux approches semble se distinguer dans l'offre d'outil de modélisation et d'execution Bpmn :


L'approche "Zero-coding" signifie qu'un modèle de processus graphique peut être rendu exécutable à l'aide de blocs de construction prédéfinis et de boîtes de dialogue de configuration. Les blocs de construction (services, adaptateurs, composants de transformation, etc) couvrent de nombreux scénarios typiques et peuvent être orchestrée sous la forme du modèle de processus. Cela nécessite des mappages de données afin de relier les entrées et sorties de tâches. Cette approche est très efficace lorsque les éléments constitutifs couvrent tous les besoins. Dacostj7 pense que ce sont les outils se réclamant de cette approche qui ont le plus de chance de percer dans le monde éducatif. Elle nécessite peu ou pas de connaissances en programmation et permette d'obtenir un dispositif fonctionnelle. Les outils sont encore peu nombreux et demande encore parfois des ajustements dans le code mais la norme BPMN 2.0 est encore très récente et une demande très forte pour ce genre de logiciel pousse les fournisseurs dans cette voix prometteuse.

Ci-dessous voici quelques logiciels qui se réclame d'une approche "zéro-coding"(voir point 4.3 pour détails logiciel) :

  • BonitaSoft
  • Sydle Seed
  • Intalio BMPS


L'approche "less-coding" argumente que les éléments constitutifs du logiciel ne pourront pas couvrir tous les besoins. Comme le nombre de scénarios de réalisation est potentiellement important, la configuration en "zéro-codage" des projets peut être très complexe. Pour les tenants de cette approche, la configuration "zero-coding" se révèle demander parfois plus d'effort que le développement de logiciels classique. C'est pourquoi il considère qu'un compromis est préférable avec une application qui génère une partie du code que l'on complète par la suite. Cette approche est plutôt plébiscitée par les IT et demande des compétence en programmation (la plus part du temps en langage Java). L'approche "less-coding" est donc plus complexe pour un nom initié à la programmation mais aussi plus souple et puissante. Les suite logiciel tenant de cette approche propose souvent de nombreux pont avec les IDE favoris des développeurs (Ex: Activiti propose un Plugin pour Eclipse


Ci-dessous voici quelques logiciels qui se réclame d'une approche "less-coding"(voir point 4.3 pour détails logiciel) :

  • JPBM
  • Activiti
  • Signavio..


Liste logiciel

  • Il existe de très nombreux logiciel de modélisation BPMN 2.0 ( environs soixantaine). La liste logiciel ci-dessous exclue les logiciels qui n'implémentent pas la nomre BPMN 2.0. De plus elle se concentre sur les logiciels allant le plus loin dans l'implémentation de la norme notamment (Modélisation des choregraphie process, execution de code..).
  • Lorsqu'il est indiqué "Pas de référence aux 4 type de conformité" cela ne veut pas dire que le logiciel ne les respecte pas.Simplement la documentation disponible ne le précise pas ou de manière flou.


Développeur Nom Platform/OS licence Conformité Volonté
"zero-coding"
Fonctionnalités Avis
Bonitasoft Bonita Open
Solution
Windows,
Linux, Mac
freeware
GNU General Public
License v2.
semble implémenter BPMN 2.0 en intégralité
Pas de référence aux
4 type de conformité
OUI Modélisation, connexion aux outils (messagerie, base de données), execution de l'application web autonome, choix du design de l'interface finale, portail permettant le suivi et la génération de rapport sur le processus.

liste complète des fonctionnalitées

Certainement l'une des meilleures suite libre pour la modélisation et l'éxécution de BPMN. Documentation et communauté importante. Une des approches zero-coding les plus avancées. Approprié aux personnes non-technique.Dacostj7 2 novembre 2012 à 12:13 (CET)


Activiti Activiti BPM Platform Windows, linux, mac Open source Licence Apache BPMN 2.0
Pas de référence aux
4 type de conformité
NON Activiti BPMS est en réalité une suite application très légère conçu travailler ensemble en s'intégrant aux outils déjà utilisé par les développeur et businessman en entreprise. Cela comprend un Modélisateur dans ue interface web basée sur Signavio, Un plugin de développement basé sur Eclipse, un programme d'execution, un Exploreur web pour déployer le processus et divers outils en ligne pour collaborer et intégrer les document déja présent en entreprise dans le processus.

liste des composants et fonctionnalitées

Activiti BPM Platform se présente comme une suite complète allant de la modélisation à l'implémentation et aux suivis de processus métier, Après recherche et essais il s'avère qu'elle n'est pas approprié aux personnes non technique. Activiti est destiné à créer des processus "Rock solid" en facilitant la communication entre businessman et développeurs Java et en s'intégrant aux programmes déjà présent en entreprise. Activiti à l'avantage d'être léger et très puissant dans les main d'expert informatique.Dacostj7 2 novembre 2012 à 12:13 (CET)


Bizagi Bizagi Bizagi BPM Suite Windows, linux, mac selon version voir ici Logiciel propriétaire. Xpress edition pour windows uniquement gratuit avec 50 utilisateurs max, et un seul serveur. Enterprise edition payante pour multiplateforme et plusieur serveur. semble implémenter BPMN 2.0 en intégralité
Pas de référence aux
4 type de conformité
OUI Modélisation, connexion aux outils (messagerie, base de données), execution de l'application web autonome, choix du design de l'interface finale, portail permettant le suivi et la génération de rapport sur le processus.

liste complète des fonctionnalitées

Application professionelle puissante avec une très bonne interface d'utilisation facile à utiliser. Bonne documentation. Approprié aux personnes non-technique.Dacostj7 2 novembre 2012 à 12:13 (CET)

Bibliographie

  • Mendling, J., Weidlich, M., & Weske, M. (2010). Business Process Modeling Notation: Second International Workshop, BPMN 2010, Potsdam, Germany, October 13-14, 2010 Proceedings. Lecture Notes in Business Information Processing. Springer.