Gateway BPMN
Che cosa sono i Gateway
In BPMN 2.0, i Gateway controllano il flusso dei processi determinando come i Sequence Flow vengono suddivisi, uniti o indirizzati in base a determinate condizioni. Sono punti decisionali all’interno di un processo, nei quali il percorso può divergere o convergere, consentendo di modellare flussi di lavoro complessi con più esiti possibili. Nei diagrammi BPMN, i Gateway sono rappresentati da forme romboidali, con icone diverse al loro interno per indicarne il comportamento specifico.
Tipi di Gateway
Gateway esclusivo (Gateway XOR)
- Scopo: è il tipo di Gateway più comune; il processo segue un solo percorso in uscita in base alle condizioni.
- Rappresentazione visiva: una forma romboidale con una «X» all’interno.
- Esempio: in un processo di approvazione, se la richiesta viene approvata segue un percorso, mentre se viene rifiutata ne segue un altro.
- Caso d’uso: quando il processo può seguire un solo percorso in base a una decisione, ad esempio «sì/no» oppure «vero/falso».
Gateway inclusivo (Gateway OR)
- Scopo: questo Gateway consente di seguire uno o più percorsi in base alle condizioni. Vengono seguiti tutti i percorsi le cui condizioni risultano vere.
- Rappresentazione visiva: una forma romboidale con un cerchio all’interno.
- Esempio: in un processo che richiede più approvazioni, ma non necessariamente tutte, il sistema può seguire tutti i percorsi di approvazione applicabili in base alle condizioni impostate.
- Caso d’uso: quando è possibile seguire più percorsi in funzione delle condizioni, ad esempio quando diversi criteri possono attivare azioni differenti.
Gateway parallelo (Gateway AND)
- Scopo: questo Gateway serve a suddividere il flusso in più percorsi paralleli, che il processo segue contemporaneamente. Può essere utilizzato anche per sincronizzare più percorsi in ingresso.
- Rappresentazione visiva: una forma romboidale con un «+» all’interno.
- Esempio: un’attività nella quale più reparti revisionano contemporaneamente alcuni documenti.
- Caso d’uso: quando le attività o le azioni devono essere eseguite in parallelo oppure quando più percorsi devono essere sincronizzati prima di proseguire.
Gateway basato su eventi
- Scopo: questo Gateway indirizza il flusso in base agli eventi che si verificano. Attende un evento specifico, ad esempio un messaggio, un timer o un segnale, per determinare quale percorso seguire.
- Rappresentazione visiva: una forma romboidale con un pentagono all’interno.
- Esempio: un processo che attende la risposta di un cliente oppure la scadenza di un intervallo di tempo per proseguire.
- Caso d’uso: quando il passaggio successivo di un processo dipende da eventi esterni, ad esempio dall’attesa di un messaggio o dell’attivazione di un timer.
Aspetti principali dei Gateway
- Suddivisione dei flussi: i Gateway possono suddividere un singolo Sequence Flow in più rami, determinando quale percorso, o quali percorsi, seguire in base a condizioni o eventi.
- Unione dei flussi: i Gateway possono anche unire più Sequence Flow in uno solo, sincronizzando percorsi paralleli o facendoli convergere in base a condizioni specifiche.
- Processo decisionale: i Gateway sono essenziali per modellare i punti decisionali, nei quali il flusso del processo dipende dall’esito di valutazioni, eventi o input dell’utente.
Casi d’uso
- Gateway esclusivo: quando può essere vera una sola condizione e il processo deve seguire un unico percorso.
- Gateway parallelo: quando più attività possono essere eseguite contemporaneamente e devono essere completate tutte.
- Gateway inclusivo: quando possono essere vere una o più condizioni e devono essere seguiti più percorsi.
- Gateway basato su eventi: quando il flusso dipende da eventi esterni, ad esempio dall’attesa di un messaggio o di un timer.
- Gateway complesso: quando regole o condizioni complesse determinano la prosecuzione del processo.
Esempio
In un semplice flusso di lavoro di approvazione:
- Gateway esclusivo: se la richiesta viene approvata, il processo prosegue; se viene rifiutata, termina.
- Gateway parallelo: dopo l’approvazione, due attività, la preparazione dei documenti e l’invio della notifica, possono essere completate in parallelo.
- Gateway basato su eventi: il processo attende la risposta del cliente oppure la scadenza di un intervallo di tempo per determinare il passaggio successivo.
I Gateway sono fondamentali per rendere più flessibili i processi aziendali, consentendo di gestire decisioni, elaborazioni parallele e sincronizzazione di percorsi diversi all’interno del flusso di lavoro.