Errori BPMN

Pubblico qui alcuni esempi con errori comuni nei diagrammi BPMN.

Gli esempi sono tratti da esercizi svolti – su carta e a matita – durante le sessioni del mio corso “Analisi dei processi di business con BPMN“.

Sono relativi a un contesto – un concessionario auto – di solito abbastanza conosciuto da chi frequenta i miei corsi, anche se lavora nelle realtà eterogenee dei miei clienti (industria, credito, pubblica amministrazione, servizi).

Naturalmente non sono presenti riferimenti che consentano di identificare gli autori degli esempi commentati.

Errori su flussi di sequenza e messaggi

BPMN - confusione tra sequenze e messaggi
BPMN – confusione tra sequenze e messaggi

In questo esempio è rappresentata una collaborazione tra due partecipanti: il cliente e il concessionario d’auto.

La sequenza delle attività è abbastanza chiara, ma ci sono errori basilari dal punto di vista di BPMN:

  • Non si distingue tra (viene usata la stessa notazione per) flussi di sequenza e messaggi, che in BPMN sono concetti del tutto diversi (i messaggi vengono scambiati tra i partecipanti; i flussi di sequenza legano tra loro le attività di ogni singolo partecipante)
  • I processi rispettivi del cliente e del concessionario presentano delle interruzioni (ad esempio, per il cliente, tra l’attività iniziale “richiesta di informazioni” e la successiva “riceve preventivo” c’è un vuoto). Questo però non è permesso in BPMN, perchè ogni processo deve collegare gli oggetti in un flusso continuo, e se c’è una pausa fra due attività va rappresentata con un evento intermedio.

Vediamo questa seconda criticità anche nel prossimo esempio, in cui la collaborazione avviene fra tre partecipanti: concessionario, casa madre e Pubblico Registro Automobilisitico.

BPMN - interruzione errata di un processo
BPMN – interruzione errata di un processo

Qui la distinzione tra flussi di sequenza e messaggi è chiara, ma c’è ancora l’interruzione erronea di un processo.

Nel processo del concessionario c’è un vuoto tra l’attività di “richiesta immatricolazione” e la successiva “richiesta messa a punto”, manca cioè un flusso di sequenza che le colleghi. L’errore può essere risolto interponendo tra le due attività un evento intermedio di attesa, che può ricevere il messsaggio “targa” per avviare la seconda attività.

Errori nelle scomposizioni

La scomposizione di un subprocess è errata quando non soddisfa le regole di base delle scomposizioni BPMN.

Un altro errore frequente consiste nel far emergere, nel diagramma che scompone un subprocess, interazioni con partecipanti che non comparivano nel livello aggregato superiore di un processo di collaborazione.

BPMN - scomposizione che fa emergere un nuovo partecipante a livello inferiore
BPMN – scomposizione che fa emergere un nuovo partecipante a livello inferiore

Nell’esempio vediamo in alto un subprocess “immatricolazione” effettuato dal concessionario d’auto.

Il subprocess viene scomposto (in basso) facendo emergere un nuovo partecipante, il PRA (Pubblico Registro Automobilistico), con i messaggi che rappresentano l’interazione fra PRA e concessionario.

Si tratta di un errore da evitare:

  • anche quando ci troviamo ad analizzare collaborazioni con diversi partecipanti, il diagramma di livello più alto (più sintetico) deve rappresentare tutti i partecipanti con le loro interazioni
  • un subprocess è sempre relativo ad un singolo partecipante; quando lo si scompone, tutte le attività di livello inferiore sono attività del medesimo partecipante, non di altri