« Bpmn 2.0 » : différence entre les versions
m (→Ambitions BPMN 2.0 et différence avec BPMN 1.2 : corrections orthographiques) |
|||
(37 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
'''Julien da Costa''', 2013 | |||
== Introduction== | == Introduction== | ||
Ligne 6 : | Ligne 7 : | ||
Initiative (BPMI) qui fusionna en 2005 avec l'Object Management Group (OMG). L'OMG présenta en Janvier | 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. | 2011 le nouveau standard BPMN 2.0 succèdant à BPMN 1.2. | ||
{{quotation|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.}} | {{quotation|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 [[Utilisateur:Dacostj7|Dacostj7]]) | (Chinosi and Trombetta, 2012) ( (Traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]]) | ||
[[Image:Bpmn2exemple.jpg| | [[Image:Bpmn2exemple.jpg|thumb|800px|exemple de modélisation d'un processus de commande avec BPMN]] | ||
Selon [http://www.omg.org/spec/BPMN/2.0/PDF la norme BPMN publié par l'OMG] : | Selon [http://www.omg.org/spec/BPMN/2.0/PDF la norme BPMN publié par l'OMG] : | ||
Ligne 19 : | Ligne 19 : | ||
== Ambitions BPMN 2.0 et différence avec BPMN 1.2 == | == Ambitions BPMN 2.0 et différence avec BPMN 1.2 == | ||
'''BPMN 1.2''' est une notation | '''BPMN 1.2''' est une notation graphique non exécutable. Des solutions plus ou moins formelles se sont développées pour implémenter les modèles BPMN. Des solutions de conversion vers d'autres langages exécutables se sont développées avec plus ou moins de réussite. La plupart du temps la solution consiste à passer par le langage Business Process Execution Language (BPEL), un langage XML exécutable. Plusieurs outils commerciaux BPMN proposent de compiler les diagrammes vers un BPEL exécutable. Cependant cette solution est souvent partielle et peu opérationnelle. Il semble que certaines modélisations BPMN ne peuvent être converties 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''' 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. | ||
{{quotation|BPMN 2.0 étend la portée et les capacités de | {{quotation|BPMN 2.0 étend la portée et les capacités de 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 la chorégraphie et les modèles de conversation (un pas en avant pour un meilleur modélisation des interactions ), et résout également les bien connues incohérences et les ambiguïtés de BPMN 1.2.}} (Chinosi and Trombetta, 2012 traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]]) | ||
Au final | Au final BPMN 2.0 ajoute par rapport à la version précédente les points suivants (librement traduit et adapté depuis Mendling, J., Weidlich, M., & Weske, M. (2010). Business Process Modeling Notation: Second International Workshop par [[Utilisateur:Dacostj7|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. | *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 | *Une sémantique d'exécution normalisées pour BPMN, qui va permettre aux fournisseurs logiciels d'implémenter des moteurs d'exécution interopérables pour les processus métier. | ||
*Un format d'échange graphique, permettant aux utilisateurs d'échanger les informations | *Un format d'échange graphique, permettant aux utilisateurs d'échanger les informations graphiques d'un diagramme de processus métiers | ||
*Une notation étendue pour les interactions inter- | *Une notation étendue pour les interactions inter-organisationnelles (également connues sous le nom de ''chorégraphies process''), qui permettra de créer de nouveaux 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 | *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 | *Certains éléments de modélisation supplémentaires pour des processus tels les événements et sous-processus non-interrompus. | ||
== Fonctionnement du langage == | == Fonctionnement du langage == | ||
Ligne 43 : | Ligne 42 : | ||
=== Sous-ensembles de symboles === | === Sous-ensembles de symboles === | ||
La spécification de BPMN 2.0 définit les symboles qui seront utilisés pour créer des modèles de processus. La spécification décrit la syntaxe et la sémantique de tous les symboles. Dans la pratique, les modélisateurs de processus sont libres de choisir des symboles pour modéliser. | La spécification de BPMN 2.0 définit les symboles qui seront utilisés pour créer des modèles de processus. La spécification décrit la syntaxe et la sémantique de tous les symboles. Dans la pratique, les modélisateurs de processus sont libres de choisir des symboles pour modéliser. | ||
En raison de la grande quantité de symboles dans BPMN 2.0 certains éléments sont rarement utilisés dans les projets de modélisation réels. On définit généralement un sous-ensemble (symbol sub-set) utile pour un projet ou un ensemble de | En raison de la grande quantité de symboles dans BPMN 2.0 certains éléments sont rarement utilisés dans les projets de modélisation réels. On définit généralement un sous-ensemble (symbol sub-set) utile pour un projet ou un ensemble de projets donnés. Pour la descritpion d'un processus de haut-niveaux (granularité grossière) le jeu de symbole complet BPMN 2.0 n'est pas nécessaire ainsi nous pouvons choisir un petit jeu de symboles nécessaires. | ||
[[Fichier:Bpmn2subset.png|400px|thumb|none| Exemple d'un jeu d'élements BPMN2 choisis pour un projet ]] | [[Fichier:Bpmn2subset.png|400px|thumb|none| Exemple d'un jeu d'élements BPMN2 choisis pour un projet ]] | ||
La spécification BPMN 2.0 fournit déjà trois sous-ensembles prédéfinis, appelé sous-classe de conformité (conformance sub-classes) : | La spécification BPMN 2.0 fournit déjà trois sous-ensembles prédéfinis, appelé sous-classe de conformité (conformance sub-classes) : | ||
*descriptif : Un peu plus d'une vingtaine d'élements se basant sur les éléments et attributs | *descriptif : Un peu plus d'une vingtaine d'élements se basant sur les éléments et attributs nécessaires à la descritpion d'un processus de haut niveaux. | ||
*analytique : Contient tous les éléments | *analytique : Contient tous les éléments précédents et en ajoutent de nouveaux. Contient une cinquantaine d'éléments | ||
*exécutables : elle contient tous les symboles BPMN 2.0 et un grand nombre d'attributs d'éléments de processus pour concevoir des modèles et leur exécution automatique. | *exécutables : elle contient tous les symboles BPMN 2.0 et un grand nombre d'attributs d'éléments de processus pour concevoir des modèles et leur exécution automatique. | ||
[[Fichier:Descriptive_subclassBPMN.png| | [[Fichier:Descriptive_subclassBPMN.png|800px|thumb|none| Sous-classe descriptive (free OrbusSoftware documentation) ]] | ||
[[Fichier:Analytic_subclassBPMN.png| | [[Fichier:Analytic_subclassBPMN.png|800px|thumb|none| Sous-classe descriptive (free OrbusSoftware documentation) ]] | ||
=== Les diagrammes === | |||
Les exemples de diagramme et la plus part des informations ci-dessous sont reprises et traduites de la documentation normative officielle BPMN 2.0. | |||
====Les diagrammes de processus privé ou public ==== | |||
Un processus privé est un type de modélisation qui permet de représenter un processus spécifique à une organisation en précisant les sous-processus, les activités ou les tâches, les Passerelles, les Événements,les Objets échangés... Le flux séquentiel des activités ou des tâches du processus est contenu dans les limites du bassin et ne peut pas le traverser. Le flux de messages peut traverser les limites du bassin pour montrer les interactions qui existent entre des processus privés qui sont séparés. | |||
[[Fichier:private_process.png|500px|thumb|none|]] | |||
Le processus public quant à lui est un processus privé plus des interactions avec à un ou plusieurs Participants en définissant les flux de messages, leur séquence,leur ordre etc. Seules les activités de communication avec l'autre(s) participant sont présentées dans le processus public. Toutes les autres activités ou tâches internes du processus privé ne sont pas représentées. | |||
[[Fichier:public_process.png|500px|thumb|none|]] | |||
==== Les diagrammes de collaboration ==== | |||
Un diagramme de collaboration est tout type de diagramme qui permet de représenter les échanges et les interactions qui se nouent entre deux ou plusieurs unités d'affaires représenté par des Bassins. Les Bassins sont définis comme étant les participants de cette collaboration. Les messages échangés entre les participants du diagramme de Collaboration sont présentés à l'aide du symbole flux de message. Ce symbole permet de connecter les bassins entre eux (ou les objets que l'on retrouve à l'intérieur de ces bassins). | |||
[[Fichier:collaboration_process.png|500px|thumb|none|]] | |||
*Un bassin peut être représenté vide. | |||
*Le flux de message relie les deux tâches ou activités lors d'une communication | |||
*Les échanges ou communications peuvent être tout type d'objet physique ou d'information | |||
*On inscrit le nom de l'objet échangé à la racine du flux de message. | |||
==== Les diagrammes de chorégraphie ==== | |||
Une Chorégraphie est la modélisation d'un comportement attendu entre des Participants qui interagissent les uns avec les autres et qui veulent coordonner leurs activités ou leurs tâches à l’aide de Messages. Dans ce type de modélisation, la focalisation n'est pas sur l'Orchestration (processus public ou privé), c'est-à-dire sur la manière dont est accompli le travail selon le point de vue des participants, mais sur les échanges de Messages entre les Participants. | |||
[[Fichier:choregraphy_process.png|500px|thumb|none|]] | |||
Alors qu'un processus public ou privé est représenté à l'intérieur d'un bassin, une chorégraphie est représentée entre les bassins (ou les participants). Une Chorégraphie ressemble à un processus privé dans la mesure où elle se présente sous la forme d’un réseau d'Activités, d'Événements et de Passerelles. Cependant, une Chorégraphie en diffère puisque les Activités en interactions représentent des échanges de Messages impliquant deux ou plusieurs Participants. Une activité de chorégraphie n'est jamais positionnée dans un bassin ou un couloir, les participants sont représentés d'une manière propre à ce modèle. | |||
====Les diagrammes de conversation ==== | |||
Le Diagramme de conversation est la description informelle d'un Diagramme de collaboration à haut niveau. Il représente des échanges de Messages (présentés sous la forme d'un regroupement de flux de messages), logiquement reliés entre les Participants et qui concernent un objet d'affaires d'intérêt, par exemple, un ordre, un envoi, une livraison ou une facture. Il représente un ensemble de Flux de Messages qui est regroupé ensemble. Une Conversation peut impliquer deux ou plusieurs participants. | |||
[[Fichier:conversation_process.png|500px|thumb|none|]] | |||
• Un diagramme de conversation représente les conversations comme des hexagones, entre les participants (les bassins). Si l'on clique sur l'hexagone, on peut avoir le détail des Flux de Message échangés entre les Participants. | |||
• Les bassins qui servent à la représentation d'un Diagramme de conversation, ne contiennent habituellement pas de processus et sont donc présentés vides. | |||
• Aucun Diagramme de chorégraphie ne peut être placé entre les bassins du Diagramme de conversation. | |||
== BPMN | == BPMN en éducation ? == | ||
Ligne 62 : | Ligne 106 : | ||
L'intéret de ces dix dernières années pour les théories [[socio-constructivisme|socio-constructivistes]] de l'apprentissage et le développement des pédagogies actives a amené à scénariser l'enseignement de manière structuré. Comme le rappel Schneider, D. {{citation|il ne suffit pas de placer les sujets dans des situations de construction et de collaboration pour qu’un apprentissage efficace ait lieu. En règle générale l’enseignant doit mettre en place des scénarios structurés pour obtenir ce résultat. Il doit chercher un équilibre harmonieux entre la liberté nécessaire au développement intellectuel et certains principes de guidage. D’un côté, il faut favoriser un véritable engagement dans un projet et les confrontations d’idées (donc traiter un apprenant comme un “petit chercheur”) et de l’autre il faut structurer et soutenir les activités et exercer un certain contrôle.}} [Schneider, D. et al. 2003] | L'intéret de ces dix dernières années pour les théories [[socio-constructivisme|socio-constructivistes]] de l'apprentissage et le développement des pédagogies actives a amené à scénariser l'enseignement de manière structuré. Comme le rappel Schneider, D. {{citation|il ne suffit pas de placer les sujets dans des situations de construction et de collaboration pour qu’un apprentissage efficace ait lieu. En règle générale l’enseignant doit mettre en place des scénarios structurés pour obtenir ce résultat. Il doit chercher un équilibre harmonieux entre la liberté nécessaire au développement intellectuel et certains principes de guidage. D’un côté, il faut favoriser un véritable engagement dans un projet et les confrontations d’idées (donc traiter un apprenant comme un “petit chercheur”) et de l’autre il faut structurer et soutenir les activités et exercer un certain contrôle.}} [Schneider, D. et al. 2003] | ||
Cette notion de scénario pédagogique va très vite trouver echo dans les [[modèle d'ingénierie pédagogique]] ([[:en:Instructional design]] - ID) . Ce courant s’intéresse, en effet {{citation|aux aspects prescriptifs de la conception de l’enseignement, c’est-à-dire à la manière dont on peut organiser ce dernier pour qu’il soit le plus efficace possible }}[Dessus, P. 2006]. Plus précisément, nous pouvons , dans le contexte des TIC, définir l'ingénierie pédagogique comme {{citation|la convergence d’intérêt entre pédagogues et informaticiens qui a pour mission l’analyse, la conception, la réalisation et la planification de la diffusion des systèmes d’apprentissage}} [Paquette, G. 2012]. Cette approche centré sur les processus met en lumière l'importance de définir et d'orchestrer la formation à différents niveaux de granularité dans ce que l'on pourrait nommer un véritable "workflow pédagogique". Très rapidement, l'ingénierie pédagogique va s'intéresser à la manière d'exprimer ces scénarios pédagogiques selon des formes normalisées afin d'en permettre l'échange et la réutilisation (voir section sur les langage pédagogique). | Cette notion de [[est utile pour::scénario pédagogique]] va très vite trouver echo dans les [[modèle d'ingénierie pédagogique]] ([[:en:Instructional design]] - ID) . Ce courant s’intéresse, en effet {{citation|aux aspects prescriptifs de la conception de l’enseignement, c’est-à-dire à la manière dont on peut organiser ce dernier pour qu’il soit le plus efficace possible }}[Dessus, P. 2006]. Plus précisément, nous pouvons , dans le contexte des TIC, définir l'ingénierie pédagogique comme {{citation|la convergence d’intérêt entre pédagogues et informaticiens qui a pour mission l’analyse, la conception, la réalisation et la planification de la diffusion des systèmes d’apprentissage}} [Paquette, G. 2012]. Cette approche centré sur les processus met en lumière l'importance de définir et d'orchestrer la formation à différents niveaux de granularité dans ce que l'on pourrait nommer un véritable "workflow pédagogique". Très rapidement, l'ingénierie pédagogique va s'intéresser à la manière d'exprimer ces scénarios pédagogiques selon des formes normalisées afin d'en permettre l'échange et la réutilisation (voir section sur les langage pédagogique). | ||
Comme le souligne Koper, R. (2004), l'ingénierie pédagogique (centré activité/processus) remet profondément en cause la démarche dominante axant l'ingénierie des dispositifs d'apprentissage sur les "objets de contenu". Contrairement à l'approche centrée sur les ressources, l'ingénierie pédagogique se centre sur l'activité, l'unité d'apprentissage représente un ensemble d'activités autour d'un scénario. Ces activités sont réalisées par des acteurs tenant un rôle précis et se déroulent dans un environnement caractérisé par un ensemble de services, d'outils et de ressources pédagogiques. Une des principales propriétés d'une unité d'apprentissage réside dans le fait qu'elle ne peut être décomposée sans perdre son sens et son efficacité d'apprentissage. | Comme le souligne Koper, R. (2004), l'ingénierie pédagogique (centré activité/processus) remet profondément en cause la démarche dominante axant l'ingénierie des dispositifs d'apprentissage sur les "objets de contenu". Contrairement à l'approche centrée sur les ressources, l'ingénierie pédagogique se centre sur l'activité, l'unité d'apprentissage représente un ensemble d'activités autour d'un scénario. Ces activités sont réalisées par des acteurs tenant un rôle précis et se déroulent dans un environnement caractérisé par un ensemble de services, d'outils et de ressources pédagogiques. Une des principales propriétés d'une unité d'apprentissage réside dans le fait qu'elle ne peut être décomposée sans perdre son sens et son efficacité d'apprentissage. | ||
Ligne 93 : | Ligne 137 : | ||
{{quotation|Un bon apprentissage mixte (blended learning) impliquent souvent un grand nombre d'activités à faire à la fois que ce soit du côté de l'enseignant ou du coté de l'élève. De plus, de nombreuses activités sont exécutées par des outils e-learning, certaines d'entre eux sont automatisées alors que certaines ne le sont pas. Avec un tel nombre d'activités et de relations entre elles, la complexité de l'organisation du processus d'apprentissage augmente et doit être géré. Selon la définition BPM d'un processus, il s'agit d'une séquence d'étapes qui sont executé à plusieurs reprises et dont certaine peuvent être appliqués à des processus éducatifs. (...) '''En fait, quand nous essayons de faire un cours réellement riche et interactif, il arrive rapidement le moment où l'organisation est trop complexe et commence à prendre trop de notre temps. A ce moment, il devient utile d'avoir une reflexion centré sur les solution de gestion de processus, ce qui peut nous aider à automatiser certaines tâches et en même temps à garder la complexité de l'organisation sous contrôle.'''}} [Kolar, J. et Pitner, T. 2011] Traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]] | {{quotation|Un bon apprentissage mixte (blended learning) impliquent souvent un grand nombre d'activités à faire à la fois que ce soit du côté de l'enseignant ou du coté de l'élève. De plus, de nombreuses activités sont exécutées par des outils e-learning, certaines d'entre eux sont automatisées alors que certaines ne le sont pas. Avec un tel nombre d'activités et de relations entre elles, la complexité de l'organisation du processus d'apprentissage augmente et doit être géré. Selon la définition BPM d'un processus, il s'agit d'une séquence d'étapes qui sont executé à plusieurs reprises et dont certaine peuvent être appliqués à des processus éducatifs. (...) '''En fait, quand nous essayons de faire un cours réellement riche et interactif, il arrive rapidement le moment où l'organisation est trop complexe et commence à prendre trop de notre temps. A ce moment, il devient utile d'avoir une reflexion centré sur les solution de gestion de processus, ce qui peut nous aider à automatiser certaines tâches et en même temps à garder la complexité de l'organisation sous contrôle.'''}} [Kolar, J. et Pitner, T. 2011] Traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]] | ||
[[Fichier:bpmnSOFTSKILLS.png| | [[Fichier:bpmnSOFTSKILLS.png|800px|thumb|center|exemple de modélisation d'un cours blended learning où des étudiants ont à élaborer un projet d'équipe. Kolar, J. et Pitner, T.(2011) ]] | ||
En réponse aux besoin de normalisation et d'interoperabilité, des langage tel que IMS learning Design ont été introduit. Ce dernier est cependant critiqué aujourd'hui et ne semble toujours pas répondre aux espoires que l'on nourissait à son sujet. Ainsi Karampiperis, p. and Sampson, D.(2007) remarquent qu'en {{citation|dépit de la large adoption de la spécification IMS-LD il manque toujours un langage commun pour représenter graphiquement les scénario d'apprentissage. Cela est dû au fait que, bien que la spécification IMS LD fournit les moyens pour la représentation de flux d'apprentissage technique, il ne donne pas d'indications sur la façon dont ces flux pourraient être représentés d'une manière humaine compréhensible. En conséquence, il existe plusieurs outils de création pour la conception d'activités d'apprentissage permettant d'exporter dans un format conforme à IMS Learning Design, mais ces outils utilisent des représentations différentes du processus d'apprentissage. D'autre part, il existe des normes pour la création de représentations graphiques humainement compréhensible des processus (à savoir le Business Process Modeling Notation standard), qui pourraient être utiles pour procurer une représentations communes des scénario d'apprentissage.}} Traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]] | En réponse aux besoin de normalisation et d'interoperabilité, des langage tel que IMS learning Design ont été introduit. Ce dernier est cependant critiqué aujourd'hui et ne semble toujours pas répondre aux espoires que l'on nourissait à son sujet. Ainsi Karampiperis, p. and Sampson, D.(2007) remarquent qu'en {{citation|dépit de la large adoption de la spécification IMS-LD il manque toujours un langage commun pour représenter graphiquement les scénario d'apprentissage. Cela est dû au fait que, bien que la spécification IMS LD fournit les moyens pour la représentation de flux d'apprentissage technique, il ne donne pas d'indications sur la façon dont ces flux pourraient être représentés d'une manière humaine compréhensible. En conséquence, il existe plusieurs outils de création pour la conception d'activités d'apprentissage permettant d'exporter dans un format conforme à IMS Learning Design, mais ces outils utilisent des représentations différentes du processus d'apprentissage. D'autre part, il existe des normes pour la création de représentations graphiques humainement compréhensible des processus (à savoir le Business Process Modeling Notation standard), qui pourraient être utiles pour procurer une représentations communes des scénario d'apprentissage.}} Traduit de l'anglais par [[Utilisateur:Dacostj7|Dacostj7]] | ||
Ligne 103 : | Ligne 147 : | ||
*'''BPMN est puissant :''' La norme permet de modéliser à peu près n'importe quel processus notamment dans sa version 2.0 qui instaure "les chorégraphies". De plus, Bpmn permet de modéliser (si on le désir) avec un niveau de détail élevé (ce qui permet notammant son execution). | *'''BPMN est puissant :''' La norme permet de modéliser à peu près n'importe quel processus notamment dans sa version 2.0 qui instaure "les chorégraphies". De plus, Bpmn permet de modéliser (si on le désir) avec un niveau de détail élevé (ce qui permet notammant son execution). | ||
*'''BPMN n'est pas un "langage mort" :''' Bpmn est une norme active et utilisée dans de nombreux domaines. BPMN est enseigné comme matière en tant que tel dans de nombreuses universités et tant à être "un incontournable" des services IT dans les organisations. Les fournisseurs de logiciel sont nombreux et se font concurrence pour rendre l'utilisation de BPMN le plus simple possible. | *'''BPMN n'est pas un "langage mort" :''' Bpmn est une norme active et utilisée dans de nombreux domaines. BPMN est enseigné comme matière en tant que tel dans de nombreuses universités et tant à être "un incontournable" des services IT dans les organisations. Les fournisseurs de logiciel sont nombreux et se font concurrence pour rendre l'utilisation de BPMN le plus simple possible. | ||
*'''BPMN devient un langage exécutable :''' Un argument non négligeable pour l'implémentation | *'''BPMN devient un langage exécutable :''' Un argument non négligeable pour l'implémentation. | ||
Quelques arguments en défaveurs de BPMN en éducation : | Quelques arguments en défaveurs de BPMN en éducation : | ||
*'''BPMN est quasiment-inconnu dans le domaine éducatif.''' On trouve peu ou pas de documentation concernant un usage de BPMN en pédagogie. On ne sait encore pas si BPMN 2.0 peut révéler utile et efficace dans la modélisation de scénario pédagogique. Il faut donc inventer, apprendre par soit même, expérimenter et on ne peut encore pas être soutenu par une communauté active utilisant BPMN au sein du monde éducatif. Avec la standardisation de la norme, le développement de nouveaux outils plus simples, la possibilité d'execution de code de la version 2.0, le mécontentement et la désillusion de certains acteurs pour des LMP qui n'évoluent pas, cette situation pourrait changer dans les prochaines années, mais en 2012 ce n'est encore pas le cas. | *'''BPMN est quasiment-inconnu dans le domaine éducatif.''' On trouve peu ou pas de documentation concernant un usage de BPMN en pédagogie. On ne sait encore pas si BPMN 2.0 peut révéler utile et efficace dans la modélisation de scénario pédagogique. Il faut donc inventer, apprendre par soit même, expérimenter et on ne peut encore pas être soutenu par une communauté active utilisant BPMN au sein du monde éducatif. Avec la standardisation de la norme, le développement de nouveaux outils plus simples, la possibilité d'execution de code de la version 2.0, le mécontentement et la désillusion de certains acteurs pour des LMP qui n'évoluent pas, cette situation pourrait changer dans les prochaines années, mais en 2012 ce n'est encore pas le cas. | ||
*'''Une execution encore trop technique'''. Même si cette argument tend à diminuer avec l'arrivé sur le marché de solution logiciel "zero-coding"(voir section "Outil"). Ces solutions doivent encore faire leurs preuves et | *'''Une execution encore trop technique'''. Même si cette argument tend à diminuer avec l'arrivé sur le marché de solution logiciel "zero-coding"(voir section "Outil"). Ces solutions doivent encore faire leurs preuves et peu de logiciels réellement simples à utiliser existent en 2012. | ||
*'''Réputation de langage pour les IT :''' Même si BPMN est conçu pour la modélisation de n'importe quelle processus, ce langage est assimilé à un univers de manageur et d'ingénieur logiciel. BPMN doit encore se défaire de son image pour conquérir la sphère éducative. | *'''Réputation de langage pour les IT :''' Même si BPMN est conçu pour la modélisation de n'importe quelle processus, ce langage est assimilé à un univers de manageur et d'ingénieur logiciel. BPMN doit encore se défaire de son image pour conquérir la sphère éducative. | ||
=== Test création et simulation d'un processus de correction avec BPMN 2.0 === | |||
Ci-dessous voici un processus décrivant une façon de procédé pour la publication d'un document. Le processus fictif se compose d'un enseignant de ses assistants et des apprenants ayant pour tâche de produire un document sans erreur en vue d'une publication. L'idée est de fournir un système non linéaire permettant un bouclage infini entre ces trois acteurs tant que le document ne convient pas aux exigences. | |||
*'''L'apprenant :''' Produit le document, transmet le document à l'assistant, effectue les corrections et envoie le document finalisé à la personne chargée de publication. | |||
*'''Les assistants :''' sont chargés des premières lectures. Ils peuvent demander des corrections et exiger de revoir le document, demander des corrections et passé ensuite par l'enseignant pour validation, ou enfin décider de publier le document tel quel. | |||
* '''L'enseignant :''' Peut décider que le document peut être publié tel quel, publié après quelques corrections mineures, ou nécessite des corrections importante devant repasser par une vérification des assisatants (retour point de départ). | |||
Le document peut tourner indéfiniment entre ces trois acteurs. | |||
==== Design ==== | |||
[[Fichier:Jdac_publication_BPMN2.png|800px|thumb|center|Exemple processus de correction réalisé avec Bonita Open Solution 5.9 ]] | |||
==== Simulation ==== | |||
Le processus précédent peut être simuler avant implémentation réelle. Pour ce faire nous avons dans Bonitasoft créer des variables booléennes "needValidation" et "needReview" qui en prenant les valeurs "true" ou "false" conditionne les différent chemin du processus. Lorsque des actions humaine sont rencontrés (rectangle bleu aux coins arrondis) nous avons liées des pages formulaires permettant l'interaction avec l'utilisateur. Enfin nous avons ajouté un "connecteur" fournis par le logiciel permetant le téléchargement et le stockage des documents. Nous avons ensuite pu tester notre application avec le design par défaut fournis par le logiciel. (Ce dernier est modifiable via css). | |||
En tant qu'administrateur nous prenons successivement les rôles d'apprenant, assistant, et enseignant afin de voir toutes les étapes du processus. En situation réelle l'utilisateur ne voit que les étapes correspondant à son rôle dans le processus. Voici quelques capture d'écran du processus simulé. | |||
[[Fichier:process1.png|200px|left|thumb|]] | |||
[[Fichier:process3.png|200px|thumb|right|]] | |||
[[Fichier:process2.png|200px|thumb|center|]] | |||
[[Fichier:Process4.png|200px|left|thumb|]] | |||
[[Fichier:process6.png|200px|thumb|right|]] | |||
[[Fichier:process5.png|200px|thumb|center|]] | |||
==== Implementation ==== | |||
Pour aller plus loin et implémenter le design en situation réelle les étapes suivantes sont nécessaires. | |||
* Modifier le design via html et Css. | |||
* Ajouter et pramétrer les connecteurs fournis par Bonita pour récupérer les utilisateurs d'une base de données contenant les étudiants | |||
* Paramétrer via API le "Bonita User Experience" afin d'obtenir un tableau de bord nous permetant de monitorer le processus. | |||
[[Fichier:bonitaUserExperience.png|800px|thumb|center|Bonita User Experience. ]] | |||
== Outils et execution de code == | == Outils et execution de code == | ||
Ligne 129 : | Ligne 213 : | ||
=== Deux approches concurrentes concernant l'execution BPMN === | === 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 : | Basiquement deux approches semble se distinguer dans l'offre d'outil de modélisation et d'execution Bpmn (BPMS) : | ||
'''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. [[Utilisateur:Dacostj7|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 | '''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. [[Utilisateur:Dacostj7|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 moins de connaissances en programmation et permette d'obtenir un dispositif fonctionnelle. Les outils sont encore peu nombreux et 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. | ||
Le terme "zero-coding" peut être trompeur. Si l'idée est là est que la connaissance d'un langage tel que JAVA n'est souvent pas nécéssaire, les outils ne sont pour autant pas du tout adapté à des personnes novices. Des connaissances sur la programmation et le déploiement serveur sont nécessaires pour paramétrer les API et interconnecter tous les outils. | |||
Ci-dessous voici quelques logiciels qui se réclame d'une approche "zéro-coding"(voir point 4.3 pour détails logiciel) : | Ci-dessous voici quelques logiciels qui se réclame d'une approche "zéro-coding"(voir point 4.3 pour détails logiciel) : | ||
Ligne 173 : | Ligne 259 : | ||
||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. | ||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. | ||
[http://www.bonitasoft.com/products/features liste complète des fonctionnalitées] | [http://www.bonitasoft.com/products/features 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. | |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. La suite fournit un nombre important d'outils à connecter et la communauté en propose de nouveaux. Par [[Utilisateur:Dacostj7|Dacostj7]] | ||
Ligne 197 : | Ligne 283 : | ||
|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. | |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. | ||
[http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | [http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | ||
|Application professionelle puissante avec une très bonne interface facile à utiliser. Bonne documentation. | |Application professionelle puissante avec une très bonne interface facile à utiliser. Bonne documentation. Un produit qui semble intéressant mais pas asser testé pour savoir si il est facile d'executer et implémenter un processus. Par [[Utilisateur:Dacostj7|Dacostj7]] | ||
|- valign="middle" align="center" style="background:#F6F6F6" | |- valign="middle" align="center" style="background:#F6F6F6" | ||
Ligne 208 : | Ligne 294 : | ||
|Sofware basé sur Eclipse. D'après le site officiel "Une fois le processus BPMN modélisé, liés à des systèmes externes et liés aux tâches de flux de travail - toutes les activités effectuées par le biais d'intuitives métaphores graphiques et d'Assistants simples - un simple clic valide le processus, génère le code, la vérification de toutes les dépendances, déploie tous les artefacts sur Intalio | BPMS Server et le processus est prêt à l'emploi." | |Sofware basé sur Eclipse. D'après le site officiel "Une fois le processus BPMN modélisé, liés à des systèmes externes et liés aux tâches de flux de travail - toutes les activités effectuées par le biais d'intuitives métaphores graphiques et d'Assistants simples - un simple clic valide le processus, génère le code, la vérification de toutes les dépendances, déploie tous les artefacts sur Intalio | BPMS Server et le processus est prêt à l'emploi." | ||
[http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | [http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | ||
|Intalio|Bpms designer est une suite logiciel très graphique développé autour de l'idée "One-Click Process Deployment" poussant au maximum la volonté d'un outil "zero-coding". | |Intalio|Bpms designer est une suite logiciel très graphique développé autour de l'idée "One-Click Process Deployment" poussant au maximum la volonté d'un outil "zero-coding". Dans les faits, ce n'est pas le cas et la suite se révèle plus difficile à utiliser que la suite Bonitasoft. L'inscription sur le site officiel est nécessaire pour avoir accès à une bonne documentation. Par [[Utilisateur:Dacostj7|Dacostj7]] | ||
|- valign="middle" align="center" style="background:white" | |- valign="middle" align="center" style="background:white" | ||
Ligne 217 : | Ligne 303 : | ||
version payante(option d'intégration supplémentaires, utilisateurs illimité, personnalisation de l'apparence) | version payante(option d'intégration supplémentaires, utilisateurs illimité, personnalisation de l'apparence) | ||
|BPMN 2.0 sous-ensemble minimal d'execution | |BPMN 2.0 sous-ensemble minimal d'execution | ||
| | |Non, dans les faits | ||
|modélisation et exécution via le navigateur, intégration de services Web, Suivi au moyen d'indicateurs de processus, Tableau de bord personnalisable avec des tableau, des jauges de but et des diagramme circulaire. | |modélisation et exécution via le navigateur, intégration de services Web, Suivi au moyen d'indicateurs de processus, Tableau de bord personnalisable avec des tableau, des jauges de but et des diagramme circulaire. | ||
[http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | [http://www.bizagi.com/index.php?option=com_content&view=article&id=244&Itemid=229 liste complète des fonctionnalitées] | ||
|Suite bpmn nouvelle sur le marché codé en Java et totalement accessible en ligne. Crée par une influente entreprise brésilienne mais qui semble assez méconnus en europe. Un produit qui semble très intéressant mais la documentation est totalement inexistante sur le web, Prise de contact en cours pour savoir comment l'obtenir. | |Suite bpmn nouvelle sur le marché codé en Java et totalement accessible en ligne. Crée par une influente entreprise brésilienne mais qui semble assez méconnus en europe. Un produit qui semble très intéressant mais la documentation est totalement inexistante sur le web, Prise de contact en cours pour savoir comment l'obtenir. La manipulation avancée de données passe par un langage de script Java (MVEL). [[Utilisateur:Dacostj7|Dacostj7]] | ||
|- valign="middle" align="center" style="background:#F6F6F6" | |- valign="middle" align="center" style="background:#F6F6F6" | ||
Ligne 261 : | Ligne 347 : | ||
* White, Stephen A. (2004). [http://www.bpmn.org/Documents/Introduction_to_BPMN.pdf Introduction to BPMN], IBM. (Also [http://www.bizagi.com/docs/Introduction%20to%20BPMN.pdf here]. | * White, Stephen A. (2004). [http://www.bpmn.org/Documents/Introduction_to_BPMN.pdf Introduction to BPMN], IBM. (Also [http://www.bizagi.com/docs/Introduction%20to%20BPMN.pdf here]. | ||
[[Catégorie: Langages de modélisation pédagogique]] |
Dernière version du 10 juin 2016 à 18:36
Julien da Costa, 2013
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)
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 graphique non exécutable. Des solutions plus ou moins formelles se sont développées pour implémenter les modèles BPMN. Des solutions de conversion vers d'autres langages exécutables se sont développées avec plus ou moins de réussite. La plupart du temps la solution consiste à passer par le langage Business Process Execution Language (BPEL), un langage XML exécutable. Plusieurs outils commerciaux BPMN proposent de compiler les diagrammes vers un BPEL exécutable. Cependant cette solution est souvent partielle et peu opérationnelle. Il semble que certaines modélisations BPMN ne peuvent être converties 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 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 la chorégraphie et les modèles de conversation (un pas en avant pour un meilleur modélisation des interactions ), et résout également les bien connues 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 précé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 d'implémenter des moteurs d'exécution interopérables pour les processus métier.
- Un format d'échange graphique, permettant aux utilisateurs d'échanger les informations graphiques d'un diagramme de processus métiers
- Une notation étendue pour les interactions inter-organisationnelles (également connues sous le nom de chorégraphies process), qui permettra de créer de nouveaux 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 événements et sous-processus non-interrompus.
Fonctionnement du langage
Des symboles structuré
BPMN est constitué d'un ensemble d'éléments graphiques. Ces éléments permettent le développement de schémas simples. Les éléments ont été choisis pour se distinguer les uns des autres. Par exemple, les activités sont des rectangles, et les décisions sont des diamants. Les différents éléments graphiques de la notation sont organisés selon un concept de layer (couche) extensible. Chaque couche est construite en se basant sur la couche précédente. Voir image, ci-contre. Cette structure permettra au langage d'évoluer en ajoutant des couches sans remettre en cause le coeur du langage.
Sous-ensembles de symboles
La spécification de BPMN 2.0 définit les symboles qui seront utilisés pour créer des modèles de processus. La spécification décrit la syntaxe et la sémantique de tous les symboles. Dans la pratique, les modélisateurs de processus sont libres de choisir des symboles pour modéliser. En raison de la grande quantité de symboles dans BPMN 2.0 certains éléments sont rarement utilisés dans les projets de modélisation réels. On définit généralement un sous-ensemble (symbol sub-set) utile pour un projet ou un ensemble de projets donnés. Pour la descritpion d'un processus de haut-niveaux (granularité grossière) le jeu de symbole complet BPMN 2.0 n'est pas nécessaire ainsi nous pouvons choisir un petit jeu de symboles nécessaires.
La spécification BPMN 2.0 fournit déjà trois sous-ensembles prédéfinis, appelé sous-classe de conformité (conformance sub-classes) :
- descriptif : Un peu plus d'une vingtaine d'élements se basant sur les éléments et attributs nécessaires à la descritpion d'un processus de haut niveaux.
- analytique : Contient tous les éléments précédents et en ajoutent de nouveaux. Contient une cinquantaine d'éléments
- exécutables : elle contient tous les symboles BPMN 2.0 et un grand nombre d'attributs d'éléments de processus pour concevoir des modèles et leur exécution automatique.
Les diagrammes
Les exemples de diagramme et la plus part des informations ci-dessous sont reprises et traduites de la documentation normative officielle BPMN 2.0.
Les diagrammes de processus privé ou public
Un processus privé est un type de modélisation qui permet de représenter un processus spécifique à une organisation en précisant les sous-processus, les activités ou les tâches, les Passerelles, les Événements,les Objets échangés... Le flux séquentiel des activités ou des tâches du processus est contenu dans les limites du bassin et ne peut pas le traverser. Le flux de messages peut traverser les limites du bassin pour montrer les interactions qui existent entre des processus privés qui sont séparés.
Le processus public quant à lui est un processus privé plus des interactions avec à un ou plusieurs Participants en définissant les flux de messages, leur séquence,leur ordre etc. Seules les activités de communication avec l'autre(s) participant sont présentées dans le processus public. Toutes les autres activités ou tâches internes du processus privé ne sont pas représentées.
Les diagrammes de collaboration
Un diagramme de collaboration est tout type de diagramme qui permet de représenter les échanges et les interactions qui se nouent entre deux ou plusieurs unités d'affaires représenté par des Bassins. Les Bassins sont définis comme étant les participants de cette collaboration. Les messages échangés entre les participants du diagramme de Collaboration sont présentés à l'aide du symbole flux de message. Ce symbole permet de connecter les bassins entre eux (ou les objets que l'on retrouve à l'intérieur de ces bassins).
- Un bassin peut être représenté vide.
- Le flux de message relie les deux tâches ou activités lors d'une communication
- Les échanges ou communications peuvent être tout type d'objet physique ou d'information
- On inscrit le nom de l'objet échangé à la racine du flux de message.
Les diagrammes de chorégraphie
Une Chorégraphie est la modélisation d'un comportement attendu entre des Participants qui interagissent les uns avec les autres et qui veulent coordonner leurs activités ou leurs tâches à l’aide de Messages. Dans ce type de modélisation, la focalisation n'est pas sur l'Orchestration (processus public ou privé), c'est-à-dire sur la manière dont est accompli le travail selon le point de vue des participants, mais sur les échanges de Messages entre les Participants.
Alors qu'un processus public ou privé est représenté à l'intérieur d'un bassin, une chorégraphie est représentée entre les bassins (ou les participants). Une Chorégraphie ressemble à un processus privé dans la mesure où elle se présente sous la forme d’un réseau d'Activités, d'Événements et de Passerelles. Cependant, une Chorégraphie en diffère puisque les Activités en interactions représentent des échanges de Messages impliquant deux ou plusieurs Participants. Une activité de chorégraphie n'est jamais positionnée dans un bassin ou un couloir, les participants sont représentés d'une manière propre à ce modèle.
Les diagrammes de conversation
Le Diagramme de conversation est la description informelle d'un Diagramme de collaboration à haut niveau. Il représente des échanges de Messages (présentés sous la forme d'un regroupement de flux de messages), logiquement reliés entre les Participants et qui concernent un objet d'affaires d'intérêt, par exemple, un ordre, un envoi, une livraison ou une facture. Il représente un ensemble de Flux de Messages qui est regroupé ensemble. Une Conversation peut impliquer deux ou plusieurs participants.
• Un diagramme de conversation représente les conversations comme des hexagones, entre les participants (les bassins). Si l'on clique sur l'hexagone, on peut avoir le détail des Flux de Message échangés entre les Participants.
• Les bassins qui servent à la représentation d'un Diagramme de conversation, ne contiennent habituellement pas de processus et sont donc présentés vides.
• Aucun Diagramme de chorégraphie ne peut être placé entre les bassins du Diagramme de conversation.
BPMN en éducation ?
Ingénierie pédagogique et théories éducatives
L'intéret de ces dix dernières années pour les théories socio-constructivistes de l'apprentissage et le développement des pédagogies actives a amené à scénariser l'enseignement de manière structuré. Comme le rappel Schneider, D. «il ne suffit pas de placer les sujets dans des situations de construction et de collaboration pour qu’un apprentissage efficace ait lieu. En règle générale l’enseignant doit mettre en place des scénarios structurés pour obtenir ce résultat. Il doit chercher un équilibre harmonieux entre la liberté nécessaire au développement intellectuel et certains principes de guidage. D’un côté, il faut favoriser un véritable engagement dans un projet et les confrontations d’idées (donc traiter un apprenant comme un “petit chercheur”) et de l’autre il faut structurer et soutenir les activités et exercer un certain contrôle.» [Schneider, D. et al. 2003]
Cette notion de scénario pédagogique va très vite trouver echo dans les modèle d'ingénierie pédagogique (en:Instructional design - ID) . Ce courant s’intéresse, en effet «aux aspects prescriptifs de la conception de l’enseignement, c’est-à-dire à la manière dont on peut organiser ce dernier pour qu’il soit le plus efficace possible »[Dessus, P. 2006]. Plus précisément, nous pouvons , dans le contexte des TIC, définir l'ingénierie pédagogique comme «la convergence d’intérêt entre pédagogues et informaticiens qui a pour mission l’analyse, la conception, la réalisation et la planification de la diffusion des systèmes d’apprentissage» [Paquette, G. 2012]. Cette approche centré sur les processus met en lumière l'importance de définir et d'orchestrer la formation à différents niveaux de granularité dans ce que l'on pourrait nommer un véritable "workflow pédagogique". Très rapidement, l'ingénierie pédagogique va s'intéresser à la manière d'exprimer ces scénarios pédagogiques selon des formes normalisées afin d'en permettre l'échange et la réutilisation (voir section sur les langage pédagogique).
Comme le souligne Koper, R. (2004), l'ingénierie pédagogique (centré activité/processus) remet profondément en cause la démarche dominante axant l'ingénierie des dispositifs d'apprentissage sur les "objets de contenu". Contrairement à l'approche centrée sur les ressources, l'ingénierie pédagogique se centre sur l'activité, l'unité d'apprentissage représente un ensemble d'activités autour d'un scénario. Ces activités sont réalisées par des acteurs tenant un rôle précis et se déroulent dans un environnement caractérisé par un ensemble de services, d'outils et de ressources pédagogiques. Une des principales propriétés d'une unité d'apprentissage réside dans le fait qu'elle ne peut être décomposée sans perdre son sens et son efficacité d'apprentissage.
L'approche centrée ressource repose quand à elle repose sur la notion de « briques » et d'agrégats. Un environnement d'apprentissage est vu comme un assemblage de « briques » indépendantes que l'on peut utiliser (et réutiliser) pour construire d'autres objets pédagogiques. L'interopérabilité des objets pédagogiques, peut être réalisée par le respect des normes qui définissent les formats de données et les moyens d'y accéder comme par exemple SCORM. Koper, R (2004) propose un point de vue qui se démarque de l'approche centrée sur les ressources en affirmant que ce ne sont pas les objets de connaissance qui constituent la clé de la réussite d'un environnement d'apprentissage, mais les activités qui y sont associées.
Langage de modélisation pédagogique
Un langage de modélisation pédagogique (LMP ou EML - Educational modeling language en anglais) sert à concevoir, implémenter, décrire, etc. des scénarios pédagogiques. En règle générale, il s'agit de modéliser des activités d'apprentissage.
«Un scénario d'apprentissage représente la description, effectuée a priori ou a posteriori, du déroulement d'une situation d'apprentissage visant l'appropriation d'un ensemble précis de connaissances, en précisant les rôles, les activités ainsi que les ressources de manipulation de connaissances, outils et services nécessaires à la mise en oeuvre des activités.» [Pernin et Lejeune 2004]
Le plus populaire des LPM est sans doute IMS learning design. Il a été publié en 2003 par le IMS/GLC. (Instructional Management Systems Global Learning Consortium). Lejeune, A (2004) nous rappelle sa genèse : la source (EML) du langage IMS Learning Design a été évaluée par le Comité Européen de Normalisation (CEN) au cours d'une étude comparative de différents EMLs (CEN/ISSS WS/LT, 2002), comme répondant le mieux aux critères satisfaisant la définition d'un langage de modélisation pédagogique. Un LMP est défini par le CEN/ISS comme «un modèle d'information et d'agrégation sémantique, décrivant les contenus et les processus engagés dans une unité d'apprentissage selon une perspective pédagogique et dans le but d'assurer la réutilisabilité et l'interopérabilité.»
IMS-LD permet de représenter et d'encoder des structures d'apprentissages pour des apprenants à la fois seuls et en groupe, rassemblés par rôles. On peut modéliser un plan de cours en IMS-LD, en définissant des rôles, des activités d'apprentissage, des services et plusieurs autres éléments et en construisant des unités d'apprentissage. Le plan de cours est modélisé et construit avec des ressources assemblées dans un dossier Zip compressé puis mis en route par un exécutable (« player »).
Bpmn actuellement inexistant en éducation
BPMN est mentionné dans la littérature comme une alternative aux langages de modélisation pédagogique développés spécifiquement pour le domaine éducatif (par exemple en:IMS Learning Design). Cependant, aujourd'hui encore, il ne semble pas y avoir beaucoup d'investigations approfondies quant à son potentiel. Dacostj7 2 novembre 2012 à 19:11 (CET)
Deux seuls projets semblent toutefois discrètement voir le jours (2012) :
- Adesina et Molloy (2012) présentent un environnement d'apprentissage virtuel de processus (VLPE) basé sur le framework Business Process Management (BPM), où les concepteurs de cours utilisent le langage BPMN.
- L’université Masaryk (république tchèque) semble le plus en avance dans le domaine. Elle lance actuellement le projet MEDUSY en partenariat avec l'entreprise Americaine RedHat. MEDUSY est un projet purement open source, axé sur le développement d'environnements d'apprentissage riche qui permettent une intégration large des différents outils e-learning. Le projet utilise la norme Bpmn 2.0 pour la modélisation de modèle d'apprentissage. Le Projet essaye de tirer parti de certaines des meilleures pratiques de l'e-apprentissage utilisés dans les systèmes modernes LMS communautaires et commerciaux et d'introduire une approche centrée sur les processus pour la gestion de l'apprentissage.( wiki du projet
Bpmn 2.0 pour modéliser et implémenter des scénario pédagogique ?
“Un bon apprentissage mixte (blended learning) impliquent souvent un grand nombre d'activités à faire à la fois que ce soit du côté de l'enseignant ou du coté de l'élève. De plus, de nombreuses activités sont exécutées par des outils e-learning, certaines d'entre eux sont automatisées alors que certaines ne le sont pas. Avec un tel nombre d'activités et de relations entre elles, la complexité de l'organisation du processus d'apprentissage augmente et doit être géré. Selon la définition BPM d'un processus, il s'agit d'une séquence d'étapes qui sont executé à plusieurs reprises et dont certaine peuvent être appliqués à des processus éducatifs. (...) En fait, quand nous essayons de faire un cours réellement riche et interactif, il arrive rapidement le moment où l'organisation est trop complexe et commence à prendre trop de notre temps. A ce moment, il devient utile d'avoir une reflexion centré sur les solution de gestion de processus, ce qui peut nous aider à automatiser certaines tâches et en même temps à garder la complexité de l'organisation sous contrôle.” [Kolar, J. et Pitner, T. 2011] Traduit de l'anglais par Dacostj7
En réponse aux besoin de normalisation et d'interoperabilité, des langage tel que IMS learning Design ont été introduit. Ce dernier est cependant critiqué aujourd'hui et ne semble toujours pas répondre aux espoires que l'on nourissait à son sujet. Ainsi Karampiperis, p. and Sampson, D.(2007) remarquent qu'en «dépit de la large adoption de la spécification IMS-LD il manque toujours un langage commun pour représenter graphiquement les scénario d'apprentissage. Cela est dû au fait que, bien que la spécification IMS LD fournit les moyens pour la représentation de flux d'apprentissage technique, il ne donne pas d'indications sur la façon dont ces flux pourraient être représentés d'une manière humaine compréhensible. En conséquence, il existe plusieurs outils de création pour la conception d'activités d'apprentissage permettant d'exporter dans un format conforme à IMS Learning Design, mais ces outils utilisent des représentations différentes du processus d'apprentissage. D'autre part, il existe des normes pour la création de représentations graphiques humainement compréhensible des processus (à savoir le Business Process Modeling Notation standard), qui pourraient être utiles pour procurer une représentations communes des scénario d'apprentissage.» Traduit de l'anglais par Dacostj7
Quelques arguments en faveur d'une utilisation de BPMN 2.0 :
- BPMN est un Standard: BPMN n'est pas la propriété d'une entreprise donnée, mais d'une institution (OMG), qui a déjà mis en place d'autres normes mondiales, par exemple, UML. La norme est supportée par de nombreux logiciels, pas de dépendance envers un fournisseur particulier et facilité d'échange des modèles entre logiciel.
- BPMN est relativement simple : BPMN est un représentations graphiques humainement compréhensible des processus. On peut assez rapidement travailler avec cette notation même si une utilisation avancé demande un apprentissage.
- BPMN est puissant : La norme permet de modéliser à peu près n'importe quel processus notamment dans sa version 2.0 qui instaure "les chorégraphies". De plus, Bpmn permet de modéliser (si on le désir) avec un niveau de détail élevé (ce qui permet notammant son execution).
- BPMN n'est pas un "langage mort" : Bpmn est une norme active et utilisée dans de nombreux domaines. BPMN est enseigné comme matière en tant que tel dans de nombreuses universités et tant à être "un incontournable" des services IT dans les organisations. Les fournisseurs de logiciel sont nombreux et se font concurrence pour rendre l'utilisation de BPMN le plus simple possible.
- BPMN devient un langage exécutable : Un argument non négligeable pour l'implémentation.
Quelques arguments en défaveurs de BPMN en éducation :
- BPMN est quasiment-inconnu dans le domaine éducatif. On trouve peu ou pas de documentation concernant un usage de BPMN en pédagogie. On ne sait encore pas si BPMN 2.0 peut révéler utile et efficace dans la modélisation de scénario pédagogique. Il faut donc inventer, apprendre par soit même, expérimenter et on ne peut encore pas être soutenu par une communauté active utilisant BPMN au sein du monde éducatif. Avec la standardisation de la norme, le développement de nouveaux outils plus simples, la possibilité d'execution de code de la version 2.0, le mécontentement et la désillusion de certains acteurs pour des LMP qui n'évoluent pas, cette situation pourrait changer dans les prochaines années, mais en 2012 ce n'est encore pas le cas.
- Une execution encore trop technique. Même si cette argument tend à diminuer avec l'arrivé sur le marché de solution logiciel "zero-coding"(voir section "Outil"). Ces solutions doivent encore faire leurs preuves et peu de logiciels réellement simples à utiliser existent en 2012.
- Réputation de langage pour les IT : Même si BPMN est conçu pour la modélisation de n'importe quelle processus, ce langage est assimilé à un univers de manageur et d'ingénieur logiciel. BPMN doit encore se défaire de son image pour conquérir la sphère éducative.
Test création et simulation d'un processus de correction avec BPMN 2.0
Ci-dessous voici un processus décrivant une façon de procédé pour la publication d'un document. Le processus fictif se compose d'un enseignant de ses assistants et des apprenants ayant pour tâche de produire un document sans erreur en vue d'une publication. L'idée est de fournir un système non linéaire permettant un bouclage infini entre ces trois acteurs tant que le document ne convient pas aux exigences.
- L'apprenant : Produit le document, transmet le document à l'assistant, effectue les corrections et envoie le document finalisé à la personne chargée de publication.
- Les assistants : sont chargés des premières lectures. Ils peuvent demander des corrections et exiger de revoir le document, demander des corrections et passé ensuite par l'enseignant pour validation, ou enfin décider de publier le document tel quel.
- L'enseignant : Peut décider que le document peut être publié tel quel, publié après quelques corrections mineures, ou nécessite des corrections importante devant repasser par une vérification des assisatants (retour point de départ).
Le document peut tourner indéfiniment entre ces trois acteurs.
Design
Simulation
Le processus précédent peut être simuler avant implémentation réelle. Pour ce faire nous avons dans Bonitasoft créer des variables booléennes "needValidation" et "needReview" qui en prenant les valeurs "true" ou "false" conditionne les différent chemin du processus. Lorsque des actions humaine sont rencontrés (rectangle bleu aux coins arrondis) nous avons liées des pages formulaires permettant l'interaction avec l'utilisateur. Enfin nous avons ajouté un "connecteur" fournis par le logiciel permetant le téléchargement et le stockage des documents. Nous avons ensuite pu tester notre application avec le design par défaut fournis par le logiciel. (Ce dernier est modifiable via css).
En tant qu'administrateur nous prenons successivement les rôles d'apprenant, assistant, et enseignant afin de voir toutes les étapes du processus. En situation réelle l'utilisateur ne voit que les étapes correspondant à son rôle dans le processus. Voici quelques capture d'écran du processus simulé.
Implementation
Pour aller plus loin et implémenter le design en situation réelle les étapes suivantes sont nécessaires.
- Modifier le design via html et Css.
- Ajouter et pramétrer les connecteurs fournis par Bonita pour récupérer les utilisateurs d'une base de données contenant les étudiants
- Paramétrer via API le "Bonita User Experience" afin d'obtenir un tableau de bord nous permetant de monitorer le processus.
Outils et execution de code
Les 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 (BPMS) :
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 moins de connaissances en programmation et permette d'obtenir un dispositif fonctionnelle. Les outils sont encore peu nombreux et 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.
Le terme "zero-coding" peut être trompeur. Si l'idée est là est que la connaissance d'un langage tel que JAVA n'est souvent pas nécéssaire, les outils ne sont pour autant pas du tout adapté à des personnes novices. Des connaissances sur la programmation et le déploiement serveur sont nécessaires pour paramétrer les API et interconnecter tous les outils.
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 ( Plus d'une trentaine). La liste ci-dessous exclue les logiciels qui n'implémentent pas la nomre BPMN 2.0. De plus elle se concentre en réalité sur les solutions allant le plus loin dans l'implémentation de la norme 2.0 (Modélisation des choregraphie process, execution de code..). En conséquence, Les outils présentés sont le plus souvent des suites logiciel permettant de modéliser et d'implémenter les diagrammes BPMN 2.0.
- Lorsqu'il est indiqué "Pas de référence aux 4 types 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 types 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. | 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. La suite fournit un nombre important d'outils à connecter et la communauté en propose de nouveaux. Par Dacostj7
|
Activiti | Activiti BPM Platform | Windows, linux, mac | Open source Licence Apache | BPMN 2.0 Pas de référence aux 4 types 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. | 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. Par Dacostj7
|
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 types 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. | Application professionelle puissante avec une très bonne interface facile à utiliser. Bonne documentation. Un produit qui semble intéressant mais pas asser testé pour savoir si il est facile d'executer et implémenter un processus. Par Dacostj7 |
Intalio | Intalio BPMS designer | Windows, linux, mac | Community edition : gratuit et 80% open-source Enterprise Edition : Payant et 100% open-code |
semble implémenter BPMN 2.0 en intégralité Pas de référence aux 4 types de conformité |
OUI | BPMS Server et le processus est prêt à l'emploi." | Bpms designer est une suite logiciel très graphique développé autour de l'idée "One-Click Process Deployment" poussant au maximum la volonté d'un outil "zero-coding". Dans les faits, ce n'est pas le cas et la suite se révèle plus difficile à utiliser que la suite Bonitasoft. L'inscription sur le site officiel est nécessaire pour avoir accès à une bonne documentation. Par Dacostj7 |
Sydle | Sydle Seed | Cloud Browser-based | Version freeware très complète version payante(option d'intégration supplémentaires, utilisateurs illimité, personnalisation de l'apparence) |
BPMN 2.0 sous-ensemble minimal d'execution | Non, dans les faits | modélisation et exécution via le navigateur, intégration de services Web, Suivi au moyen d'indicateurs de processus, Tableau de bord personnalisable avec des tableau, des jauges de but et des diagramme circulaire. | Suite bpmn nouvelle sur le marché codé en Java et totalement accessible en ligne. Crée par une influente entreprise brésilienne mais qui semble assez méconnus en europe. Un produit qui semble très intéressant mais la documentation est totalement inexistante sur le web, Prise de contact en cours pour savoir comment l'obtenir. La manipulation avancée de données passe par un langage de script Java (MVEL). Dacostj7 |
JBoss community | JBPM | Windows, linux, mac | free open-source | BPMN 2.0 Conformité d'execution de processus. | NON | jBPM5 permet d'exécuter des processus définis en utilisant le format XML BPMN 2.0. JBPM5 propose différents outils pour modéliser, exécuter, gérer et contrôler les processus métier en utilisant le format BPMN 2.0 pour spécifier les processus opérationnels exécutables. Deux éditeurs sont proposé l'un s'intégrant dans l'IDE Eclipse sous la forme d'un plugin, l'autre est un outil cloud basé sur le navigateur. | Approche très similaire à Activiti (Les fondateur d'aciviti viennent de JBoss). JBPM est un outil puissant à réserver aux utilisateurs sachant codé en Java. Léger, totalement open-source avec une Très bonne documentation. Par Dacostj7 |
Bibliographie
- Adesina, Ayodeji and Derek Molloy (2012). Virtual Learning Process Environment: Cohort Analytics for learning and learning processes, International Journal of Social and Human Sciences 6, 429-438. PDF
- Adesina, Ayodeji and Derek Molloy (2012). Capturing And Monitoring Of Learning Process Through A Business Process Management (Bpm) Framework, 3rd International Symposium for Engineering Education, 2010, University College Cork, Ireland PDF
- Dessus, P. Quelles idées sur l’enseignement nous révèlent les modèles d’Instructional Design ? Revue Suisse des Sciences de l’Éducation, 28(1), 137-157, (2006) http://web.upmf-grenoble.fr/sciedu/pdessus/rsse06.pdf
- Karampiperis, P., Sampson, D.: Toward a common graphical language for learning flows: Transforming bpel to IMS learning design level Qrepresentations. IN : Proceedings of the 7th IEEE International Conference on Advanced Learning technologies (ICALT 2007, pp. 798-800. IEEE Computer Society, Los Alamitos, CA, USA (2007)
- Kolář, Jiří et Tomáš Pitner (2011) Process-based Approach to E-learning - Educational Processes and Patterns. SCO2011- Conférence e-learning Université Masaryk, 26 Avril 2011. PDF Brouillon/Preprint
- Koper, E. J. R. (2001). Modeling units of study from a pedagogical perspective: the pedagogical meta model behind EML.
- CHINOSI M., TROMBETTA A. « BPMN: An introduction to the standard ». Computer Standards & Interfaces [En ligne]. 2012. Vol. 34, p. 124–134.
- 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.
- OMG, Business process model and notation (BPMN 2.0), formal/2011-01-03, OMG, http://www.omg.org/spec/BPMN/2.0 (May 2011).
- Paquette, G., L’ingénierie pédagogique, pour construire l’apprentissage en réseau. Presses de l’Université du Québec,457 p, 2002
- PERNIN J-P., LEJEUNE A., (2004). Dispositifs d'apprentissage instrumentes par les technologies : vers une ingénierie centrée sur les scénarios, colloque TICE 2004, Compiègne, octobre 2004 http://archive- edutice.ccsd.cnrs.fr/docs/00/02/75/99/PDF/Pernin_Lejeune.pdf consulté mars 2005
- Schneider, D. et al. (2003). Conception et implémentation de scénarios pédagogiques riches avec des portails communautaires. Colloque de Guéret 4-6 Juin 2003. http://tecfa.unige.ch/proj/seed/catalog/docs/gueret03/gueret03-schneider-print.pdf
- White, Stephen A. (2004). Introduction to BPMN, IBM. (Also here.