Introduction
Lorsque j’ai commencé à examiner et à concevoir des modèles de processus métier, l’un des points les plus fréquents de confusion que j’ai rencontrés au sein des équipes était l’application correcte des événements de limite dans BPMN 2.0. En particulier, la distinction entre les événements interrompant et non interrompant déroutait souvent même les modélisateurs expérimentés. Du point de vue de l’expérience utilisateur (UX) et de la conception du système, choisir le mauvais type d’événement peut entraîner des utilisateurs frustrés, des données perdues ou des alertes critiques manquées. Dans ce guide, je souhaite partager mes retours pratiques et examiner le fonctionnement de ces deux types d’événements, en m’appuyant sur des scénarios du monde réel afin de vous aider à les appliquer efficacement dans vos propres modèles de processus.

La différence fondamentale : Du point de vue d’un revue
Dans mon expérience de relecture des diagrammes BPMN 2.0, la différence principale entreinterrompantetnon interrompantles événements se résume à une seule question :L’activité associée continue-t-elle de s’exécuter après activation de l’événement ?Ils sont généralement utilisés commeévénements attachéssur la limite d’une tâche ou d’un sous-processus pour gérer des occurrences imprévues.
Événements interrompant
Lorsque j’évalue un processus pour la gestion des pannes critiques, je rechercheles événements interrompant.
-
Définition :Lorsqu’un événement interrompant est déclenché, l’exécution de l’activité en courss’arrête immédiatement.
-
Comportement :Le flux du processus est entièrement redirigé vers le chemin suivant l’événement.
-
Impact sur l’expérience utilisateur :Du point de vue de l’expérience utilisateur, cela signifie que l’écran ou la tâche en cours de l’utilisateur est brusquement interrompu. Il ne doit être utilisé que lorsque la situation exige une priorité absolue.
-
Exemple :Dans un processus de traitement de commande que j’ai récemment examiné, unévénement d’erreurmarqué « non livrable » a été attaché à une activité d’approvisionnement. Si cette erreur se produit, l’approvisionnement s’arrête, et le processus passe à la gestion de l’erreur, par exemple en retirant l’article du catalogue.
Événements non interrompant
D’un autre côté, je recommande souventévénements non interrompant pour les scénarios où nous devons surveiller ou aider sans interrompre le flux principal de l’utilisateur.
-
Définition : Un événement non interrompant capte et gère un événement sans interrompre l’activité à laquelle il est attaché.
-
Comportement : Les threads actuellement actifs ne sont ni terminés ni affectés. À la place, un nouveau jeton est produit et suit le chemin de traitement de l’événement, tandis que l’activité d’origine continue son exécution en parallèle.
-
Exemple : Un événement d’escalade étiqueté « livraison tardive » peut être attaché à la même activité d’approvisionnement. Si déclenché, l’approvisionnement continue, mais un nouveau chemin est lancé pour informer le client du retard.
-
Cas d’utilisation supplémentaire : Dans un exemple de vote par e-mail que j’ai analysé, un événement de démarrage de message non interrompant a été utilisé dans un sous-processus d’événement afin que plusieurs votes puissent être collectés au fil du temps sans interrompre la période principale de vote.

Étude de cas : Vérification du compte et sécurité
Pour illustrer le contraste fonctionnel entre ces deux types d’événements limites, laissez-moi vous guider à travers un processus de vérification du compte utilisateur que j’ai récemment examiné pour une application web moderne. Il s’agit d’un scénario courant où obtenir la logique des événements correcte est crucial à la fois pour la sécurité et la satisfaction de l’utilisateur.
Imaginez une tâche appelée « Compléter la vérification du profil » effectuée par l’utilisateur. Nous devions gérer deux scénarios différents : l’un nécessitant une action immédiate et l’autre simplement enregistrer des informations.
1. Événement limite interrompant : « Alerte de sécurité »
-
Déclencheur : Un événement d’erreur « Alerte de sécurité » attaché à la tâche « Compléter la vérification du profil ».
-
Comportement :Si le système détecte un compromis potentiel du compte (par exemple, une connexion à partir d’une adresse IP blacklistée) pendant que l’utilisateur remplit son profil, alors le événement d’interruption se déclenche.
-
Résultat et impact sur l’expérience utilisateur :La tâche « Compléter la vérification du profil » est immédiatement interrompue. L’utilisateur est déconnecté, sa session est détruite, et le flux du processus est redirigé vers un « Verrouiller le compte et avertir l’administrateur » chemin. L’utilisateur est empêché de terminer son profil car le risque de sécurité a une priorité absolue. Dans mon analyse, cette approche a été jugée correcte, car permettre à l’utilisateur de continuer présenterait un risque de sécurité majeur.

2. Événement de limite non interruptif : « Rappel d’enregistrement de progression »
-
Déclencheur :Un événement de minuterie « Enregistrer la progression » attaché à la même tâche « Compléter la vérification du profil », configuré pour se déclencher toutes les 5 minutes.
-
Comportement :Tant que l’utilisateur continue à saisir activement ses informations, le événement non interruptif se déclenche.
-
Résultat et impact sur l’expérience utilisateur :Un jeton parallèle est généré, ce qui déclenche un processus en arrière-plan pour « Sauvegarde automatique du brouillon dans la base de données ».De façon cruciale, la tâche « Compléter la vérification du profil » reste active et sans interruption ; l’utilisateur n’éprouve ni pause ni rafraîchissement d’écran. L’utilisateur poursuit son travail, tandis que l’événement non interruptif effectue un effet secondaire utile. Cela a grandement amélioré l’expérience utilisateur en évitant la perte de données sans ennuyer l’utilisateur avec des pop-ups intrusives.

Tableau de comparaison
Lorsque je présente ces concepts aux parties prenantes, j’utilise toujours un tableau de comparaison pour rendre les différences absolument claires :
| Fonctionnalité | Interruptif (alerte de sécurité) | Non interruptif (rappel d’enregistrement) |
|---|---|---|
| Tâche principale | Interrompue immédiatement | Continue sans être affectée |
| Flux du jeton | Redirigé vers le chemin d’erreur | Division (l’un continue, l’autre se sépare) |
| État du processus | Abandonné/Abandonné | Exécution parallèle |
| Objectif | Gestion des exceptions/Récupération | Surveillance/Tâches secondaires d’assistance |
En utilisant ces événements ensemble, vous pouvez vous assurer que les erreurs critiques interrompent immédiatement le travail pour éviter des dommages, tandis que les tâches auxiliaires mineures (comme la journalisation ou les rappels) peuvent s’exécuter en parallèle, améliorant considérablement l’expérience utilisateur et l’efficacité du processus.
Conclusion
En fin de compte, maîtriser les subtilités entre les événements de limite interrompant et non interrompant a été un tournant dans mon parcours de modélisation de processus. Lorsque je reviens maintenant sur des diagrammes, je cherche cet équilibre délicat : utiliser les événements interrompant pour imposer des règles commerciales strictes et des frontières de sécurité, et tirer parti des événements non interrompant pour créer une expérience utilisateur fluide et soutenue. En appliquant réfléchiment ces modèles BPMN 2.0, vous pouvez concevoir des flux de travail qui ne sont pas seulement techniques robustes, mais aussi très intuitifs et résilients pour l’utilisateur final. Je recommande vivement de revoir vos modèles de processus actuels en gardant ces distinctions à l’esprit – vous pourriez être surpris par la fluidité que peuvent acquérir vos flux de travail.
Références
-
Événements de limite BPMN 2.0 expliqués: Un aperçu rapide de la manière dont les événements de limite sont associés aux activités dans BPMN.
-
Événements interrompant vs. Événements non interrompant: Comparaison détaillée des comportements des événements et du flux de jetons.
-
Modélisation de la gestion des exceptions dans BPMN: Guide sur l’utilisation des événements d’erreur et d’escalade pour la récupération du processus.
-
Événements temporisés dans les processus métier: Comment implémenter des déclencheurs basés sur le temps et des sauvegardes automatiques dans les flux de travail.











