Camunda BPM – Guide Complet des Passerelles (Gateways)

 🚀 Introduction

Dans BPMN (Business Process Model and Notation), les passerelles — appelées gateways — contrôlent la prise de décision et la synchronisation dans un processus.

Camunda BPM implémente ces passerelles selon la norme officielle BPMN 2.0.

Dans ce blog, nous allons découvrir :

✔ Les différents types de passerelles
✔ Quand utiliser chacune
✔ Comment Camunda les exécute
✔ Des exemples réels basés sur des workflows d’entreprise


🧩 Qu’est-ce qu’une Passerelle (Gateway) en BPMN ?

Une passerelle est un point de décision, de division ou de synchronisation dans un diagramme BPMN.

Elle détermine comment le processus doit continuer en fonction :

  • de conditions

  • d’exécutions parallèles

  • d’événements externes

  • de règles métiers complexes


🔀 Les Types de Passerelles dans Camunda BPM

Il existe 5 types principaux de passerelles :

PasserelleIcôneUtilisation
Exclusive (XOR)Une seule voie est prise
🟢 Inclusive (OR)🟢Une ou plusieurs voies possibles
Parallel (AND)Toutes les voies sont exécutées
Event-BasedEn attente d’un événement
⚙️ Complex⚙️Logique avancée / règles complexes

1️⃣ Passerelle Exclusive (XOR) – « Choisir une seule voie » ❌

La passerelle exclusive permet de choisir une seule sortie parmi plusieurs.

✔ Quand l’utiliser :

  • Une seule condition peut être vraie

  • Un seul chemin doit être exécuté

  • Exemple : approbation basique, vérification simple

► Exemple :

Commande reçue ↓ Vérifier montant ↓ ↓ < 500 ≥ 500







✔ Comportement dans Camunda:

  • Évalue les conditions dans l’ordre

  • Le premier chemin vrai est choisi

  • Chemin par défaut possible


2️⃣ Passerelle Inclusive (OR) – « Une ou plusieurs voies » 🟢

La passerelle inclusive permet d’activer une ou plusieurs branches simultanément.

✔ Quand l’utiliser :

  • Plusieurs conditions peuvent être vraies

  • Règles qui se chevauchent

  • Exemple : notifications multiples, checks combinés

► Exemple :

Vérifier document ↓ ↓ ↓ Valide? Manque? Revue?


















✔ Comportement dans Camunda:

  • Active toutes les conditions vraies

  • Attend le retour de toutes les branches actives avant de continuer


3️⃣ Passerelle Parallèle (AND) – « Exécuter tout » ➕

La passerelle parallèle lance toutes les branches en même temps.

✔ Quand l’utiliser :

  • Tâches indépendantes

  • Multi-services

  • Traitements en parallèle

► Exemple :

Start ↓ Passerelle parallèle ↓ ↓ ↓ A B C (tâches parallèles)





✔ Comportement dans Camunda:

  • Aucune condition

  • Toutes les branches se déclenchent

  • À la jonction, toutes doivent être terminées


4️⃣ Passerelle Basée sur les Événements (Event-Based) ⏳

La passerelle event-based attend qu’un événement spécifique se produise.

✔ Quand l’utiliser :

  • En attente d’un message

  • Timeout

  • Interaction utilisateur

  • Système externe

► Exemple :

Attendre : 1️⃣ Message du système A 2️⃣ Timer (5 minutes) 3️⃣ Annulation utilisateur





✔ Comportement Camunda:

  • Souscrit aux événements

  • Le premier événement reçu est choisi

  • Les autres sont annulés


5️⃣ Passerelle Complexe – « Logique avancée » ⚙️

Utilisée pour des cas très spécifiques avec une logique complexe.

✔ Quand l’utiliser :

  • Synchronisation conditionnelle

  • Pour « n’importe quelles 2 tâches sur 3 »

  • Processus dynamiques

► Exemple :

Le flux continue après la fin de 2 branches sur 3.




✔ Comportement Camunda:

  • Utilise des conditions personnalisées

  • Rare mais extrêmement puissant


📊 Tableau Résumé

PasserelleRègleExécution
❌ ExclusiveUne seule condition vraieUn seul chemin
🟢 InclusiveUne ou plusieursSynchronisation intelligente
➕ ParallèleToutesExécution simultanée
⏳ Basée sur événementsAttendre un événementLe premier gagne
⚙ ComplexeLogique personnaliséeContrôle avancé

🧠 Exemples réels d’entreprise

🧾 Processus de validation de facture

  • XOR → Valide / invalide

  • OR → Notifications multiples

  • AND → Génération PDF, email, enregistrement

🚀 Workflow microservices

  • AND → Appels parallèles

  • Event-Based → Callback système ou timeout

🏦 KYC bancaire

  • OR → Documents manquants

  • XOR → Niveau de risque


🔧 Comment Camunda exécute les passerelles

✔ Exclusive / Inclusive :

  • Conditions définies dans le flux sortant

  • Expressions JUEL ou FEEL-like

✔ Parallèle :

  • Aucun test

  • Activation de tokens concurrents

✔ Basée sur événements :

  • Création de souscriptions d’événements

  • Le premier déclencheur gagne

✔ Complexe :

  • Conditions personnalisées

  • Synchronisation dynamique


🎯 Conclusion

Les passerelles sont les décideurs du workflow Camunda :

  • ❌ Exclusive → un seul chemin

  • 🟢 Inclusive → un ou plusieurs

  • ➕ Parallèle → exécuter tout

  • ⏳ Basée sur événements → attendre un événement

  • ⚙ Complexe → logique avancée

Bien utiliser chaque type de passerelle permet de créer des workflows robustes, flexibles et évolutifs dans Camunda BPM.

Les passerelles donnent au BPMN sa puissance : décisions, branchements, parallélisme, événements et synchronisation.

💼 Support professionnel disponible

Si vous rencontrez des problèmes sur des projets réels liés au développement backend d’entreprise ou à l’automatisation des workflows, je propose des services de conseil payants, de débogage en production, de support projet et de formations ciblées.

Les technologies couvertes incluent Java, Spring Boot, PL/SQL, Azure, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM).

🌐 WebsiteIT Trainings | Digital lectern | Digital rostrum | Digital metal podium 


 

Comments

Popular posts from this blog

jBPM Installation Guide: Step by Step Setup

Scopes of Signal in jBPM

OOPs Concepts in Java | English | Object Oriented Programming Explained