Archyno
BPMNDiagrammes de comportement

Les événements BPMN

Des cercles, et les deux choses d'un cercle qui portent tout le sens : l'épaisseur de son bord et ce qui est dessiné dedans. Une fois ces deux idées séparées dans votre tête, tout le catalogue d'événements se réduit à une grille.

8 min de lectureBPMN 2.02 sur 7

La réponse courte

  • Un événement BPMN porte deux faits indépendants : son bord dit où il se situe dans le flux, son glyphe dit de quel type il est.
  • Bord fin pour un événement de début, double pour un intermédiaire, épais pour un événement de fin. Rien d'autre sur le cercle ne change cela.
  • Un glyphe vide capte, un glyphe plein lance. La même enveloppe signifie attendre un message ou en envoyer un, selon le seul remplissage.
  • L'événement frontière est la façon dont BPMN modélise l'exception : interruptif à bord plein, il annule l'activité ; non interruptif à bord pointillé, il tourne à côté d'elle.
Un processus BPMN utilisant des événements. Un événement de début de message lance une tâche évaluer le sinistre. Un événement intermédiaire de minuterie attaché à cette tâche, étiqueté sept jours, mène à une tâche escalader. Le chemin normal mène à une tâche régler le sinistre. Les deux chemins atteignent un événement de fin sinistre clos.
La minuterie sur le bord de la tâche d'évaluation est un événement de bordure. Si sept jours passent avant la fin de la tâche, le jeton sort par là - c'est ainsi que BPMN dit "et si cela prend trop longtemps".

01L'épaisseur du bord d'abord, le glyphe ensuite#

Quatre événements BPMN dessinés avec le même symbole de message à des épaisseurs de bordure différentes : un événement de début de message à bordure fine, un événement intermédiaire de message à double bordure, un événement de fin de message à bordure épaisse et un événement de fin d'erreur à bordure épaisse.
Même glyphe, trois épaisseurs de bord. Le fin ne peut que démarrer un processus, le double ne peut arriver qu'à l'intérieur, l'épais ne peut que le terminer.

Chaque événement BPMN répond à deux questions indépendantes, et les lire séparément est toute l'astuce :

ÉlémentNotationCe que cela signifie
Événement de débutbord simple finLà où une instance de processus commence. Rien ne peut y entrer. Un processus peut en avoir plusieurs, et chacun est une entrée distincte.
Événement intermédiairebord doubleQuelque chose qui arrive pendant le processus : soit attendu, soit émis. Se place dans un flux de séquence, ou sur la bordure d'une activité.
Événement de finbord simple épaisLà où ce chemin s'achève. Rien ne peut en sortir. L'atteindre termine ce jeton, pas nécessairement tout le processus.
Glyphe intérieurenveloppe, horloge, éclairDe quel type de chose il s'agit. Vide signifie "aucun" : non spécifié, et parfaitement respectable sur un modèle descriptive.

02Les types d'événement qui valent la peine#

ÉlémentNotationCe que cela signifie
Aucuncercle videNon spécifié. Le bon choix sur un modèle descriptive où "le processus démarre" suffit à tout le monde.
MessageenveloppeQuelque chose est arrivé d'un autre participant, ou lui est envoyé. Toujours associé à un flux de message franchissant une frontière de piscine.
MinuteriehorlogeUne date, une durée ou un cycle. En événement de début c'est le calendrier ; sur une bordure c'est une échéance.
ErreuréclairUn échec nommé. Émis par un événement de fin dans un sous-processus, capté par un événement de bordure posé dessus. C'est le try/catch de BPMN.
SignaltriangleUne diffusion. Contrairement à un message il n'a pas de destinataire précis : tous ceux qui écoutent réagissent.
Conditionnelpage lignéeSe déclenche quand une condition sur les données devient vraie, pas à la fin d'une étape.
Escaladeflèche vers le hautComme une erreur, mais l'activité continue. "Prévenez quelqu'un de plus haut et poursuivez."
Terminaisoncercle pleinÉvénement de fin qui tue tous les jetons de l'instance, pas seulement le sien. Le seul événement de fin qui a des dents.

Huit sur treize. Compensation, annulation, lien et multiple existent et sont assez rares pour être consultés le jour où on les rencontre.

03Les événements de bordure, ou : tout ce qui va de travers#

Un événement de bordure est un événement intermédiaire dessiné sur le bord d'une activité, et c'est la construction la plus utile de BPMN. Il dit : pendant que cette tâche tourne, cette autre chose peut arriver, et si elle arrive, sortez par ici.

Délais dépassés, annulations, erreurs, un client qui téléphone pour modifier sa commande - tout cela est un événement de bordure, et tout cela demanderait sinon une passerelle et un second chemin que le lecteur doit entrelacer mentalement avec le premier.

ÉlémentNotationCe que cela signifie
Interruptifbord double pleinL'activité est annulée et le jeton sort par la bordure. Un délai, une erreur, une annulation.
Non interruptifbord double en tiretsL'activité continue et un second jeton part sur le chemin de bordure. Une escalade, une demande d'état, une relance.

04Événements de début et de fin en pratique#

Un processus à plusieurs événements de début a plusieurs entrées réellement distinctes : un sinistre arrivant par courrier, par application et par téléphone. C'est en général plus clair qu'un seul événement de début suivi d'une passerelle demandant comment il est arrivé, car la passerelle laisse entendre que le canal est une décision du processus, alors que c'est un fait qu'on lui remet.

Pour les événements de fin, c'est l'inverse : en avoir plusieurs est en général juste, parce que le nom de l'événement de fin est le résultat. "Sinistre réglé" et "Sinistre refusé" en deux événements de fin en disent plus qu'un seul "Fin" précédé d'une passerelle. Le pilotage du processus comptera exactement ceux-là, donc bien les nommer paie deux fois.

À utiliser quand

  • Plusieurs événements de début quand il y a réellement plusieurs déclencheurs
  • Plusieurs événements de fin, chacun nommé d'après le résultat qu'il représente
  • Un événement de fin de terminaison quand l'échec d'un chemin doit tout arrêter
  • Un événement de bordure pour chaque exception que vous savez nommer

Préférer autre chose quand

  • Une 'Fin' vide après une passerelle qui a déjà décidé du résultat
  • Un événement intermédiaire sans type servant de jalon - prenez une annotation textuelle
  • Un événement de début message sans flux de message dessiné vers lui
  • Des événements de bordure sur une tâche qui ne peut pas plausiblement être interrompue

05Erreurs courantes#

  1. Un flux de séquence sortant d'un événement de fin. Rien ne suit un événement de fin. Jamais. Si quelque chose suit, c'était un événement intermédiaire.
  2. Un événement message sans flux de message. Le glyphe affirme qu'un autre participant existe ; dessinez la piscine et le flux, ou prenez un événement sans type.
  3. Émission et capture confondues. Le creux attend, le plein envoie. À l'envers, cela inverse le sens de toute la conversation.
  4. Des minuteries utilisées comme des attentes qui sont en fait des files. "Attendre 2 jours" veut d'ordinaire dire "cela dort dans la boîte de quelqu'un". Modélisez la tâche et posez la minuterie sur sa bordure.
  5. Un seul événement de fin pour tout. Les résultats disparaissent, et le pilotage avec eux.

Les événements se marient naturellement aux passerelles: une passerelle basée sur événement est précisément une course entre plusieurs événements captants, et c'est la construction qui rend "le premier qui arrive" exprimable.

En une ligne chacun

  1. 01L'épaisseur du bord dit quand : fin démarre, double arrive pendant, épais termine.
  2. 02Le glyphe intérieur dit quel type ; vide est une réponse légitime.
  3. 03Les glyphes creux captent, les pleins émettent.
  4. 04Un événement de bordure est la façon dont BPMN dit "et si cela tourne mal".
  5. 05L'interruptif annule l'activité ; le non interruptif tourne à côté d'elle.
  6. 06Nommez les événements de fin d'après les résultats : ils deviennent votre pilotage.

06Questions fréquentes#

Que signifient les différents bords d'événements BPMN ?

L'épaisseur du bord porte la position dans le flux. Un trait simple et fin est un événement de début, un trait double un événement intermédiaire, et un trait simple épais un événement de fin. Le glyphe intérieur porte le type : bord et glyphe sont donc deux choix indépendants.

Quelle différence entre un événement de lancement et de réception ?

Un événement de réception attend que quelque chose arrive et a un glyphe non rempli. Un événement de lancement le fait arriver et a un glyphe plein. Le même symbole d'enveloppe signifie donc attendre un message quand il est vide, et envoyer un message quand il est plein.

Qu'est-ce qu'un événement frontière en BPMN ?

Un événement intermédiaire accroché au bord d'une activité, qui capte quelque chose survenant pendant son exécution : un délai dépassé, une erreur, un message d'annulation. C'est ainsi que BPMN modélise les exceptions sans diagramme de gestion d'erreurs séparé.

Quelle différence entre événement frontière interruptif et non interruptif ?

Un événement frontière interruptif a un bord plein et annule l'activité à laquelle il est accroché quand il se déclenche. Un non interruptif a un bord pointillé et démarre un chemin parallèle pendant que l'activité continue : c'est ainsi que l'on modélise un avis d'escalade.

Quels sont les types d'événements BPMN les plus courants ?

Message, minuterie, erreur, signal et conditionnel couvrent la plupart des diagrammes réels. Message et minuterie à eux seuls en couvrent la majorité : quelque chose est arrivé, ou assez de temps s'est écoulé.

Dans cette série

À lire aussi

Tous les articles