BPMN et diagramme d'activité UML
Les deux tracent du travail en séquence, les deux utilisent un losange pour une décision, et sur de longs passages de n'importe quel processus les deux diagrammes sont la même image. Quatre choses les séparent, et une seule concerne la notation.
8 min de lectureBPMN 2.07 sur 7
La réponse courte
- Les deux notations font circuler un jeton sur le flux, donc la moitié consacrée au flux de contrôle est presque identique dans les deux diagrammes.
- La vraie divergence est le couloir : BPMN interdit au flux de séquence de franchir une frontière de participant, les partitions UML n'ont pas cette règle.
- Les événements frontière font de l'interruption une marque à part entière en BPMN ; UML exprime la même idée par des régions interruptibles, que presque personne ne trace.
- Seul BPMN a une histoire d'exécution. Si le diagramme part vers un moteur de processus, le choix est déjà fait.
01La même image, tracée deux fois#
Commençons par ce qui ne fait pas débat. Les deux notations décrivent un jeton qui circule le long d'un flux : il part d'un début, traverse des morceaux de travail, se divise à une branche, attend à une jointure et finit par s'arrêter. Ce modèle vient du même endroit dans les deux cas, et c'est pourquoi les deux diagrammes d'un simple processus d'approbation sont visiblement le même dessin avec un mobilier différent.
| Élément | Notation | Ce que cela signifie |
|---|---|---|
| Une unité de travail | Rectangle arrondi dans les deux | Une tâche BPMN et une action UML sont la même idée. BPMN ajoute une marque pour le type de travail - utilisateur, service, manuel - que UML laisse au nom. |
| Une branche exclusive | Losange dans les deux | BPMN y dessine un X et UML le laisse vide, mais la sémantique concorde : un seul chemin sortant est emprunté, et les conditions sont sur les arcs. |
| Le parallélisme | Losange avec un plus, ou une barre épaisse | La passerelle parallèle de BPMN et les barres de fourche et de jointure d'UML veulent dire la même chose. C'est la seule différence de forme sur laquelle un lecteur bute vraiment. |
| La fin | Cercle épais, ou cible pleine | Les deux distinguent "ce chemin est terminé" de "tout le processus est terminé", et dans les deux notations c'est cette distinction que l'on rate. |
Si votre processus est une ligne droite avec deux décisions, la comparaison s'arrête ici et vous devriez tracer celle que vos lecteurs connaissent déjà. Les différences ci-dessous ne mordent qu'à partir du moment où participants, interruptions ou automatisation entrent en scène - c'est-à-dire, il faut l'avouer, dans la plupart des processus réels.
02Où les deux divergent vraiment#
1. Le couloir est une règle, pas une étiquette. C'est la différence qui compte le plus et que l'on remarque le moins. Une partition d'activité UML dit qui exécute une action et rien de plus, si bien que le flux de contrôle franchit ses frontières aussi librement que n'importe quoi d'autre. Un couloir BPMN est un participant entièrement distinct doté de son propre processus, et BPMN interdit au flux de séquence de le franchir : l'interaction entre couloirs doit être un flux de message. Cette seule règle explique qu'un diagramme BPMN de deux organisations soit une affirmation sur leur indépendance, tandis que l'équivalent UML est une affirmation sur la répartition des rôles.
2. L'interruption est de première classe en BPMN. Attachez un événement frontière à une tâche et vous avez dit, d'une seule marque, que ce travail peut être interrompu par une échéance, une erreur ou un message entrant - et si le chemin initial se poursuit ensuite. UML peut exprimer la même chose avec une région d'activité interruptible et une action d'acceptation d'événement, mais la construction est rarement enseignée, rarement tracée et rarement bien lue. En pratique, si le processus est plein d'escalades et de délais, BPMN le dessinera avec un tiers de l'encre. Le vocabulaire d'événements est l'essentiel de ce que vous achetez.
3. UML tient dans un modèle plus large. Un diagramme d'activité partage son modèle avec le diagramme de classes voisin : une action peut donc consommer un objet d'un type défini ailleurs, et un outil peut vérifier que ce type existe. BPMN a des objets de données, mais ils sont locaux au processus par construction et ne portent rien qui ressemble à un modèle de classes. Si la description du processus doit s'aligner sur une conception système, ce vocabulaire partagé vaut plus que n'importe quelle fonctionnalité de notation.
4. Seul BPMN est exécutable. BPMN 2.0 définit une sérialisation XML que les moteurs de workflow consomment directement, ce qui permet au même fichier d'être une image pour le métier et un artefact de déploiement pour l'ingénierie. UML a fUML, un sous-ensemble exécutable à la sémantique définie, et presque aucun moteur qui l'accepte. Traitez cela comme la seule contrainte dure de la liste : s'il y a un moteur au bout de la chaîne, la notation est BPMN et le reste de cet article n'est que contexte.
03Lequel tracer#
La décision est presque toujours prise par le lecteur et non par le processus. Les deux notations peuvent exprimer n'importe quel processus que vous aurez à tracer ; une seule sera lue d'emblée par les gens qui doivent le valider.
À utiliser quand
- Les lecteurs viennent du métier, surtout si un cabinet de conseil ou un cursus d'analyse métier leur a déjà enseigné BPMN.
- Le processus franchit des frontières d'organisation et leur indépendance fait partie du propos.
- Échéances, escalades, annulations et interruptions déclenchées par message sont la substance du processus.
- Le diagramme part vers un moteur de processus, maintenant ou vraisemblablement plus tard.
Préférer autre chose quand
- Le processus est interne à un système et les lecteurs sont des ingénieurs qui lisent déjà UML.
- Les étapes doivent s'aligner sur des types, des opérations ou des composants définis dans le même modèle.
- Le diagramme est l'une d'une douzaine de vues d'un système et la cohérence entre elles compte plus que l'aisance de lecture.
- Il vous faut l'ensemble dans un fichier de modèle échangeable plutôt qu'un processus à la fois.
Là où le public est vraiment mixte - et sur un projet de taille quelconque il l'est généralement - tracez le processus une fois en BPMN pour ceux qui en sont propriétaires, et gardez le diagramme d'activité pour les parties du flux qui relèvent vraiment de l'algorithme et non du processus. Cette séparation suit le public au lieu de le combattre, et se défend bien plus facilement en revue qu'un diagramme unique que la moitié de la salle ne sait pas lire.
04Passer de l'un à l'autre#
Les conversions dans les deux sens sont courantes, et la façon honnête d'en mener une est de décider à l'avance ce que l'on accepte de perdre. De BPMN vers UML, le flux de contrôle se transfère presque parfaitement : les tâches deviennent des actions, les passerelles exclusives des nœuds de décision et de fusion, les passerelles parallèles des fourches et des jointures, et les règles de passerelle se correspondent une à une. Ce que vous abandonnez, c'est tout ce qui touche aux participants et aux événements.
Dans l'autre sens, les pertes sont plus faibles mais les ajouts sont du travail : BPMN voudra un événement de début, un événement de fin et un couloir pour chaque acteur que vous aviez modélisé en partition, et il refusera de laisser le flux de séquence traverser ces couloirs. C'est en général ce refus qui rentabilise l'exercice, car il force une question que le diagramme d'activité vous laissait éviter : est-ce un processus ou deux ?
Quel que soit le sens, le coûteux est le redessin - et c'est précisément ce qu'un outil adossé à un modèle supprime : gardez participants et travail comme éléments de modèle et la seconde vue cesse d'être un second dessin. Pour le voir plutôt que le lire, le modèle de départ BPMN ouvre un processus avec couloirs et lignes d'eau, événements déjà posés, et la démo de quinze secondes rend un vrai fichier à la fin.
En une ligne chacun
- 01La moitié consacrée au flux de contrôle est en pratique le même diagramme dans les deux notations ; ne choisissez pas sur les formes.
- 02Un couloir BPMN interdit au flux de séquence de franchir sa frontière. Une partition UML non. C'est la différence la plus profonde entre les deux.
- 03Les événements frontière rendent BPMN bien moins coûteux pour les processus pleins de délais, d'escalades et d'annulations.
- 04Un diagramme d'activité vaut davantage quand le processus doit s'accorder avec un modèle de classes voisin.
- 05Si un moteur doit l'exécuter, la réponse est BPMN, et rien d'autre dans cette liste ne s'applique.
05Questions fréquentes#
Un moteur de processus peut-il exécuter un diagramme d'activité UML ?
Pas comme il exécute un processus BPMN. Il existe un sous-ensemble exécutable d'UML appelé fUML, à la sémantique définie, mais presque aucun moteur de workflow commercial ne l'accepte comme cible de déploiement, alors que le XML BPMN 2.0 est lu directement par des moteurs comme Camunda, Flowable ou Zeebe. Si le but est l'exécution, considérez la question comme tranchée.
Les couloirs BPMN signifient-ils la même chose que les partitions UML ?
Non, et c'est là que les gens trébuchent. Une partition UML dit seulement qui exécute une action, et le flux de contrôle traverse les partitions librement. Un couloir BPMN est un participant distinct doté de son propre processus, et le flux de séquence n'a pas le droit d'en franchir la frontière : seul le flux de message le peut. Un couloir est donc une affirmation bien plus forte qu'une simple ligne d'eau.
Peut-on convertir un processus BPMN en diagramme d'activité UML ?
Le squelette du flux de contrôle se convertit proprement : les tâches deviennent des actions, les passerelles exclusives des nœuds de décision, les passerelles parallèles des barres de fourche et de jointure. Ce qui ne survit pas, c'est tout ce que BPMN dit des participants et des événements : les couloirs s'effondrent en partitions, les flux de message deviennent des arcs ordinaires, et les événements frontière n'ont aucun équivalent direct.
Quelle notation les analystes métier attendent-ils ?
BPMN, dans presque toute organisation dotée d'une fonction processus. C'est la notation enseignée dans les cursus d'analyse métier et celle dans laquelle livrent les cabinets de conseil en processus : elle arrive donc déjà lisible. Un diagramme d'activité UML reste en général compréhensible pour les mêmes personnes, mais il se lit comme un artefact d'ingénierie et non comme un document de processus.
Dans cette série
- 01Qu'est-ce que BPMN
- 02Événements
- 03Passerelles
- 04Exemples BPMN
- 05Dessiner un BPMN
- 06Symboles BPMN
- 07BPMN ou diagramme d'activité
À lire aussi
Fondamentaux
Diagrammes de comportement
Pratique de la modélisation
Référence de notation
Diagrammes de comportement
Pratique de la modélisation