L'essentiel BPMN 2.0

Comment réconcilier les besoins métier et informatique pour la gestion des processus métier ?

BonitaSoft

Les processus sont présents dans les entreprises et organismes publics à tous les niveaux. Le BPMN 2.0 (Business Process Model and Notation 2.0) est certainement la meilleure chose qui soit apparue dans le domaine du BPM.

Ce tutoriel est un guide ultime pour le BPMN 2.0 qui vous donne l'essentiel de ce qu'il faut savoir.

Il nous a été fourni par Bonitasoft, éditeur de la suite open source Bonita BPM que vous pouvez télécharger gratuitement ici.

N'hésitez pas à donner vos avis par rapport à cet article : Commentez

- Titre : L'essentiel BPMN 2.0

- Auteur : BonitaSoft

- Parution : 13 octobre 2014

- Mise à jour : 2 juin 2020

- Licence : Copyright ® 2014 BonitaSoft. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. BPMN : une notation qui compte

- II. Qu'est-ce que le BPMN ?

- II-A. Le b.a.-ba du BPMN

- II-B. Un outil de collaboration entre le métier et l'IT

- III. Les quatre catégories d'éléments BPMN

- III-A. Les éléments BPMN en quatre catégories

- III-B. Éléments de workflow

- III-C. Éléments d'organisation

- III-D. Éléments de lisibilité

- III-E. Comportements spécifiques

- IV. Les trois niveaux de complexité du BPMN

- IV-A. BPMN : trois niveaux de complexité

- IV-B. Le BPMN de base

- IV-C. Exemple d'éléments basiques BPMN

- IV-D. BPMN intermédiaire

- IV-E. Activités intermédiaires

- IV-F. Flux séquentiels intermédiaires

- IV-G. Branchements intermédiaires

- IV-H. Réception et envoi intermédiaires

- IV-I. Messages et signaux intermédiaires

- IV-J. Minuteries et erreurs intermédiaires

- IV-K. Événements intermédiaires

- IV-L. Résumé

- IV-M. Sources et compléments de lecture

- V. Remerciements

I - BPMN : une notation qui compte

Il était temps. Les responsables métier et professionnels de l'informatique peuvent enfin partager un langage commun répondant à leurs besoins respectifs et qui soit à la fois précis et flexible. Ce langage, le BPMN 2.0, ouvre de nouveaux horizons en matière de collaboration et de compréhension mutuelle autant qu'il permet de développer des applications métier plus efficacement.

Chez Bonitasoft, éditeur leader de solutions BPM open source (gestion des processus métier), nous sommes conscients de la puissance et du potentiel des normes communes. Le BPMN 2.0 est un complément naturel à la démocratisation du BPM qui est au cœur de notre « business model » open source.

Si vous avez déjà entendu parler du BPMN, il se peut que vous ayez retenu qu'il s'agit d'une approche complexe et peut-être avez-vous été peu enclin à aller plus loin. Rassurez-vous, au-delà des apparences, le BPMN est beaucoup plus simple qu'il n'y paraît. Il s'agit d'un langage qui s'acquiert avec le temps, mais dont les éléments essentiels sont finalement assez faciles à maîtriser. L'un des avantages du BPMN, c'est qu'il propose différents niveaux de compréhension. Les notions de base sont suffisamment simples et structurantes pour que votre apprentissage se fasse graduellement vers le niveau intermédiaire, ce qui vous permettra de communiquer efficacement avec les équipes techniques qui, grâce à leur connaissance avancée du BPMN, sauront rajouter les éléments nécessaires pour rendre les processus exécutables.

Nous vous proposons cet eBook afin de vous familiariser avec les concepts-clés du BPMN et vous permettre de commencer à modéliser vos premiers processus. Nous sommes convaincus qu'une fois les bases acquises, vous trouverez cette approche puissante, adaptable et remarquablement facile. Que vous soyez responsable métier, pilote de processus ou développeur, le BPMN est le passage obligé vers la mise en œuvre de processus optimisés et une plus grande efficacité de votre organisation.

Miguel Valdes Faura, PDG et cofondateur de BonitaSoft

II - Qu'est-ce que le BPMN ?

II-A - Le b.a.-ba du BPMN

Si vous avez déjà entendu parler du BPMN sans pour autant savoir ce que c'est ni ce que ce langage fait, vous n'êtes pas seuls.

Mais avant de définir ce qu'est le BPMN, commençons par définir ce qu'il n'est pas …

Ce n'est pas un système.

Vous ne pouvez pas acheter un BPMN, il s'agit d'un standard dans le domaine de la modélisation de processus et le développement informatique.

Ce n'est pas seulement pour le métier ou l'IT. C'est un langage commun.

Ce n'est pas seulement pour les experts.

Si vous êtes familier avec la création de diagrammes, vous pouvez commencer sans attendre.

BPMN = BPM + N

Un modèle de processus est une représentation des processus d'une organisation. Un modèle peut être analysé et optimisé.

Définitions

BPM (Business Process Management) est la discipline qui consiste à considérer la gestion des processus comme un moyen d'améliorer la performance opérationnelle. BPMN (Business Process Model and Notation) est l'ensemble de conventions graphiques permettant de représenter les processus métier sous forme de modèle(1). BPMS (Business Process Management Suite) est une plate-forme logicielle permettant d'outiller la démarche BPM depuis la découverte du processus jusqu'à son optimisation via sa définition, son automatisation et son analyse(2).

La notation consiste en un ensemble de symboles graphiques représentant des actions, des flux ou des comportements dans un processus. Dans un BPMS, la notation BPMN désigne des instructions informatiques pouvant être exécutées.

Le BPMN est facilement compréhensible par :

- l'analyste métier qui modélise les processus conceptuellement ;

- les développeurs en charge de rendre exécutable le processus modélisé ;

- les utilisateurs finaux qui utilisent et suivent la réalisation des processus.

II-B - Un outil de collaboration entre le métier et l'IT

Le BPMN permet de décrire rapidement le métier.

Dessinez votre métier pas à pas.

Le modèle graphique pourra être transformé facilement en une application permettant d'« exécuter » le processus.

Grâce au BPMN, la direction fonctionnelle peut définir son métier avec un haut degré de précision et les informaticiens peuvent communiquer facilement à la fois entre eux et avec le métier grâce à ce cadre commun.

Le BPMN peut être appliqué pour tout type de processus dans toute organisation.

En développant un modèle basé sur le langage BPMN, vous pouvez optimiser la communication avec vos décisionnaires, vous pouvez identifier les améliorations potentielles et les mettre en œuvre, le tout de manière collaborative.

Le BPMN vous paraît sans doute familier.

source: Business Process Model and Notation, Version 2 Janvier 2011, OMG

Le BPMN existe depuis plus de dix ans et le BPMN 2.0 a hérité de nombreux éléments de la version 1.0 comme les formes et les symboles.

Ce qui change dans la version 2.0 n'est pas évident visuellement : l'adoption du format XML et la capacité à rendre le modèle exécutable.

La majeure partie des éditeurs BPM, open source ou non, offre aujourd'hui un support étendu de la norme BPMN 2.0.

Le BPMN n'est pas un langage d'exécution. Il est destiné à être « consommé » par le moteur de processus qui le rendra exécutable.

III - Les quatre catégories d'éléments BPMN

III-A - Les éléments BPMN en quatre catégories

La spécification du BPMN 2.0 est longue, dense et complexe.

On peut néanmoins l'aborder de manière simple en organisant les éléments selon plusieurs catégories.

Avec seulement quelques éléments des trois premières catégories, vous pouvez commencer à construire un diagramme pour décrire le processus.

Regardons plus précisément à quoi correspondent ces éléments :

Éléments de
workflow

Éléments
d'organisation

Éléments de
lisibilité

Comportements
spécifiques

Activities (activités)
Events (événements)
Gateways (porte logique)
Sequence flow (flux séquentiel)

Pools (piscines)
Swimlanes (lignes d'eau)
Groups (groupes)

Annotation (annotations)
Links (liens)

Messages / message flow
(messages / flux de messages)
Signals (signaux)
Timers (minuterie)
Errors (erreurs)
Repeating (boucles)
Correlation (corrélation)

Le BPMN 2.0 c'est :

- 98 éléments visuels ;

- 508 pages ;

- 300 illustrations ;

- 313 tableaux ;

- 3 annexes ;

- 13 groupes de travail.

Note de traduction : les différents éléments de la notation BPMN sont exprimés en anglais avec ajout d'une traduction entre parenthèses afin de faciliter la compréhension des illustrations.

III-B - Éléments de workflow

Ils incluent les activités, branchements et événements, et les flux séquentiels qui les lient.

Chacun de ces éléments propose plusieurs types qui peuvent être connectés dans une séquence.

Activités (activities)
Tâches qui peuvent être réalisées par un humain, un système ou un sous-processus.

Événements (events)
Utilisés pour débuter ou finir un processus et gérer des actions spécifiques au cours de celui-là.

Branchements (gateways)
Utilisés pour dissocier ou réunir des flux.

Flux séquentiels (sequence flow)
Utilisés pour montrer la progression du flux.

III-C - Éléments d'organisation

Ils incluent les piscines et lignes d'eau. Ce sont des containers pour le flux de processus.

Piscine (pool)

Contient un processus unique et complet. Un workflow ne peut pas sortir d'une piscine : il convient de transférer les actions d'une piscine à une autre en utilisant les événements.

Ligne d'eau (swimlane)

Utilisée pour identifier qui fait quoi. Dans une piscine, les lignes d'eau servent à séparer les nageurs afin qu'ils ne se percutent pas.

Un worflow peut franchir les lignes d'eau comme si elles n'existaient pas. Elles ont une fonction purement organisationnelle.

Groupe

Utilisé pour réunir des éléments graphiques. Il est sans conséquence pour les flux séquentiels.

III-D - Éléments de lisibilité

Ils incluent les annotations et les liens .

Ces éléments servent à faciliter la lisibilité du processus. Ils sont sans effet sur l'exécution du processus.

Annotations
Elles permettent de rajouter des annotations pour donner davantage d'explications, notamment pour les débutants.

Liens (links)
Ils permettent de couper un processus devenu trop long et de continuer sur une autre ligne.

III-E - Comportements spécifiques

Les comportements spécifiques incluent les événements , les boucles et les corrélations .

Ces éléments nous permettent d'exécuter un processus se comportant de manière complexe.

Messages et message flow
Utilisés pour transférer une action ou une donnée d'un processus / pool à un autre et de les relier.

Signaux
Utilisés pour envoyer des données à plusieurs activités simultanément.

Corrélation
Les corrélations sont utilisées pour coordonner l'avancement de deux instances.

Minuteries (timers)
Utilisées pour démarrer périodiquement des activités ou pour vérifier qu'une activité s'est déroulée dans un délai défini.

Erreurs
Utilisées pour définir le comportement lorsque le système rencontre une erreur technique.

Boucles (repeating)
Utilisées pour rééditer un comportement comme lancer des tâches multiples ou répéter une même tâche plusieurs fois.

IV - Les trois niveaux de complexité du BPMN

IV-A - BPMN : trois niveaux de complexité

Les symboles BPMN servent plusieurs objectifs.

Ils représentent visuellement un flux de processus.

Ils permettent de visualiser un code exécutable permettant de transformer le modèle de processus en une application informatique.

Souvenez-vous que nous avons organisé le BPMN selon quatre catégories :

Éléments de workflow

Éléments d'organisation

Éléments de lisibilité

Comportements spéciaux

Le BPMN basique est essentiellement visuel. Le BPMN intermédiaire et avancé devient exécutable.

Les éléments de la notation BPMN peuvent aussi être catégorisés selon trois niveaux de complexité : basique, intermédiaire et avancé.

Basique

Intermédiaire

Avancé

Activités

Tâche abstraite

Tâche humaine
Tâche de service

Sous-processus événementiel

Événements

Début
Fin

Événements en ligne et
de bordure - cf. comportements
spéciaux

Branchements

Exclusif (XOR)
Parallèle (AND)

Inclusif

Flux séquentiels

Flux séquentiel

Flux conditionnel
Flux par défaut

Comportements
spéciaux

Messages
Minuteries
Erreurs
Signaux

Boucles
Multiinstantation
Transaction
Compensation

IV-B - Le BPMN de base

Le BPMN basique est utile pour modéliser un processus dans ses grandes lignes.

Activités, événements, branchements et flux séquentiels relèvent du niveau basique du BPMN.

Les activités de base sont abstraites ou indéfinies. Les événements de base incluent les débuts (start) et les fins (end).

Branchements basiques :

AND (aussi appelés parallèle).
Tous les flux entrants doivent avoir été reçus (quel que soit l'ordre) pour que le processus continue.
Tous les flux sortants sont actifs et le processus s'exécute en parallèle.

XOR (aussi appelés exclusif).
Un seul flux entrant est nécessaire.
Un seul flux sortant peut être suivi et une condition est nécessaire pour déterminer quel flux doit être suivi.

Flux séquentiel basique : dirige simplement le processus d'activité en activité.

IV-C - Exemple d'éléments basiques BPMN

Commençons simplement : activités abstraites, événements start et stop, des branchements et des flux séquentiels.

Cet exemple décrit le processus d'orientation et de formation d'un nouvel embauché grâce à des éléments BPMN de base.

Imaginez qu'un jeton est déplacé suivant le diagramme comme sur un plateau de jeu. Cela permet de comprendre comment les notations du modèle contrôlent le mouvement du pion au fur et à mesure que vous ajoutez de la complexité.

Lorsque l'événement start est déclenché, une nouvelle « instance » du processus commence. Pensez à ce qui arrive à un jeton unique traversant chaque chemin un par un.

BPMN 2.0, Thomas Allweyer

Processus d'orientation et de formation d'un nouvel embauché

IV-D - BPMN intermédiaire

Pour rendre un modèle visuel exécutable, il convient d'utiliser le BPM de niveau intermédiaire.

Dans un processus exécutable, le diagramme de processus est l'application informatique !

Pour cette nouvelle étape d'apprentissage du BPMN, nous verrons comment rendre votre BPMN «exécutable» et le transformer in fine en un processus automatisé.

Le BPMN 2.0 n'est pas seulement une notation. Mis en œuvre par un outil de modélisation BPMN, il fournit des instructions de programmation qu'un moteur de processus utilise pour exécuter le processus.

L'exemple précédent est un modèle simple qui montre visuellement ce qui se passe dans le processus. L'exemple sur cette page et les pages suivantes montre comment le modèle peut être étendu en utilisant le BPMN intermédiaire.

Processus d'orientation et de formation d'un nouvel embauché

IV-E - Activités intermédiaires

Elles incluent les activités de type humaine, service et appelante .

Les activités doivent être différenciées : sont-elles réalisées par une personne, automatisées ou réalisées par un logiciel ? S'agit-il d'un sous-processus à part entière ?

Une tâche humaine doit être réalisée par une personne humaine.

Une activité de service est une activité automatisée.

Une activité appelante représente l'appel à un sous-processus.

« Prepare training schedule » est une activité appelante. Elle est liée à un sous-processus (un « enfant » du processus présent).

À ce stade du processus, le « jeton » est passé au sous-processus, et quand il a terminé, il est renvoyé au processus parent.

C'est un aspect fondamental du BPMN. Vous pouvez modéliser un processus parent « macro » qui peut être très simple. Il appellera une série de sous-processus qui sont des processus indépendants.

Cela signifie qu'ils peuvent être modélisés de façon propre et modifiés au besoin, sans nécessairement modifier le processus parent.

IV-F - Flux séquentiels intermédiaires

Ils incluent les flux conditionnels et par défaut .

Un flux séquentiel intermédiaire en BPMN doit être défini comme conditionnel ou par défaut, de sorte que le «jeton» connaisse la voie à suivre. Un flux séquentiel de base est automatique (dès qu'une activité est terminée, on passe à la tâche suivante dans la séquence).

Flux séquentiel conditionnel

Certaines conditions doivent être remplies afin que le processus « choisisse » la tâche suivante parmi deux ou plusieurs options. Un flux conditionnel ressemble à une condition « SI-ALORS ». Dans cet exemple binaire :

- si le calendrier est OK pour le formateur, cette condition = vrai ;

- si le calendrier n'est pas OK pour le formateur, cette condition = faux.

Le flux par défaut vous permet de diriger le flux si, pour une raison quelconque, aucune condition n'est remplie. Le jeton prendra toujours cette direction, même s'il y a une erreur de saisie de données quelque part, qui pourrait invalider la condition définie SI-ALORS. Un flux par défaut est marqué par un « \ ».

Un flux séquentiel ne peut pas franchir les bordures d'un pool. Pour communiquer un flux entre deux pools, utilisez des messages.

IV-G - Branchements intermédiaires

Les branchements inclusifs permettent un contrôle précis du flux.

Sorties des branchements inclusifs

Un branchement inclusif peut déclencher plusieurs sorties simultanément. Des conditions sont requises.

Exemple

Condition

Valeur

Montant

6000

Couleur

rouge

Les flux 2 et 4 remplissent la condition. Les flux 1 et 3 ne la remplissent pas - aucun jeton ne passe.

Entrées d'un branchement inclusif

Un branchement inclusif attend toutes les entrées. Elles doivent toutes être reçues et valides pour que le flux continue. Le moteur reconnaît quelles entrées il attend (flux 2 et 4).

IV-H - Réception et envoi intermédiaires

Les événements intermédiaires sont de type émission ou réception .

Ils comprennent les événements spécifiques de début, fin et intermédiaires de complexité moyenne.

Les événements BPMN sont le plus souvent de type « émission » et « réception ».

Événements combinatoires

Les événements peuvent être de tous types.

Un événement « réception » peut être positionné tout au long du processus.

La spécification BPMN définit de manière quelque peu confuse ce comportement comme « intermédiaire ». Si vous gardez en tête le concept d'émission / réception, il vous sera plus facile de comprendre.

Les « débuts » spécifiques (message, minuterie, signal et erreur) permettent de déclencher un processus sans intervention humaine, car ils reçoivent une information envoyée d'ailleurs.

« D'ailleurs » signifie qu' un événement d'« émission » d'un autre processus qui peut être, par exemple, un événement de fin, lance le processus.

Dans ce cas spécifique, la fin d'un processus peut déclencher le début d'un autre processus.

IV-I - Messages et signaux intermédiaires

Les messages et les signaux transmettent des données par-delà les bordures.

Les messages s'adressent exclusivement à des receveurs uniques, les signaux à des receveurs multiples.

Message
Vous pouvez commencer un processus avec un message. En BPMN, le message est le moyen privilégié pour transmettre des données d'un processus à l'autre. En réalité, il s'agit de la seule possibilité.
En BPMN, vous pouvez démarrer un processus avec des données provenant d'un processus différent.
A contrario, si vous voulez envoyer des données à un autre processus, utilisez des messages d'envoi intermédiaires ou de fin.

Signal
Comme les messages, les minuteries et les erreurs, les signaux peuvent être réceptionnés ailleurs et peuvent déclencher un processus. Un signal « envoi » unique est diffusé largement et peut être reçu par plusieurs signaux « réception ». C'est utile lorsque vous voulez que plusieurs actions soient déclenchées en parallèle.

IV-J - Minuteries et erreurs intermédiaires

Les minuteries et les erreurs peuvent mettre en pause, reporter un processus ou lui faire prendre un chemin d'exception.

Comme les autres événements intermédiaires, les minuteries et les erreurs permettent de débuter ou de finir un processus, ou de déclencher une action au cours du processus.

Minuterie (timer)
Les minuteries permettent de définir des intervalles ou des dates pendant lesquels le processus sera en pause. Par exemple, une minuterie de début permet de déclencher le processus toutes les 24 heures ou tous les premiers mardis de chaque mois.
Si la minuterie est localisée dans le flux du processus, ce dernier attendra jusqu'à ce que la minuterie arrive à son terme, puis continuera.

Erreur
Comme les messages et les minuteries, les erreurs peuvent être réceptionnées depuis un autre point et peuvent déclencher l'exécution d'un processus ou indiquer de suivre une branche spécifique du processus permettant de contourner ou traiter le problème.

IV-K - Événements intermédiaires

Messages, signaux, minuteries et erreurs définissent le comportement du workflow.

IV-L - Résumé

Avec les quatre catégories du BPMN basique et intermédiaire, vous pouvez commencer à construire votre application basée sur un processus.

Le BPMN est un standard permettant au métier et à l'IT de partager un langage commun contribuant à faciliter grandement la création d'applications métier.

Le BPMN est à la fois un ensemble de conventions visuelles pour la modélisation et pour l'exécution du code informatique que représente un élément donné.

La plupart des éléments de la notation BPMN reprennent les concepts de logigrammes, ce qui rend sa compréhension abordable.

Les quatre catégories :

Éléments de workflow

Éléments d'organisation

Éléments de lisibilité

Comportements spéciaux

Il y a des éléments de niveau basique, intermédiaire et avancé dans chacune de ces catégories.

- Le BPMN de base est utile pour modéliser.

- Le BPMN intermédiaire commence à rendre le modèle exécutable.

- Le BPMN avancé définit intégralement le comportement du processus.

Si vous créez un outil de modélisation, lisez la spécification BPMN !

Si vous construisez des applications basées sur des processus, ce guide est fait pour vous !

IV-M - Sources et compléments de lecture

BPMN Method and Style , 2 d ed, Bruce Silver, October 2011.

OMG Business Process Model and Notation (BPMN) Version 2.0, January 2011.

BPMN 2.0 : Introduction to the Standard for Business Process Modeling , Thomas Allweyer, February 2010.

V - Remerciements

Nous remercions BonitaSoft qui nous a permis de publier cet article sur Developpez.com. BonitaSoft est le premier éditeur open source de solutions de gestion des processus métiers (BPM). Créée en 2009 par les fondateurs du projet Bonita, BonitaSoft se propose de démocratiser le BPM en offrant une solution rapide et simple à mettre en œuvre pour un coût total de déploiement minime. Les différentes versions du logiciel ont déjà été téléchargées plus de 1.500.000 fois dans le monde par des entreprises ou des organisations de toutes tailles, pour des projets simples ou complexes.

Vous pouvez télécharger et tester la suite Bonita BPM : Bonita BPM 6.3

N'hésitez pas à donner vos avis par rapport à cet article : Commentez

(1)Gartner Research.

(2)Object Management Group.