Sei sulla pagina 1di 7

INTRODUZIONE ALLA BUSINESS PROCESS MODELING NOTATION (BPMN)1

1. Presentazione

La notazione BPMN (http://www.bpmn.org) sviluppata dalla Business Process Management Initiative e dallo
Object Management Group (http://www.omg.org), associazioni no-profit che raccolgono operatori nel campo
dellinformatica e dellanalisi organizzativa. La BPMN ha come obiettivo fornire uno standard di rappresentazione
efficace facile da utilizzare e da comprendere da parte degli utenti business interessati al problema della modellazione,
progettazione ed eventuale informatizzazione dei processi aziendali: analisti di processo che costruiscono le bozze
iniziali dei processi organizzativi in esame o da progettare, programmatori e sviluppatori delle applicazioni informatiche
per la gestione di tali processi, e infine manager e dirigenti responsabili della gestione e del monitoraggio dei processi
stessi. La BPMN sostanzialmente una derivazione del formalismo dei flow chart ma con alcune aggiunte e
modificazioni che permettono di superarne alcuni limiti nella modellazione dei processi aziendali. Permette di costruire
dei diagrammi di processo (BPD Business Process Diagram) che rappresentano in pratica dei grafi o reti costituiti da
oggetti rappresentati dalle attivit di processo, collegati da flussi di controllo che definiscono la relazione logica, le
dipendenze e lordine di esecuzione delle attivit stesse. La versione 1.0 dello standard stata rilasciata nel 2004,
mentre la versione 2.0 oggi (fine 2010) disponibile in una versione beta.
La BPMN consente spesso una stretta integrazione con i sistemi di sviluppo software. Sono infatti disponibili
applicazioni che consentono al modellista di rappresentare i dettagli di un processo tramite BPMN e traducono poi tale
modello in programmi sofware per la gestione del processo stesso.

2. Diagrammi di processo (BPD)

Un BPD si costruisce utilizzando alcuni elementi grafici la cui caratteristica principale la semplicit interpretativa
per gli analisti di business e dei processi organizzativi. La notazione richiama anche, come detto, simboli classici del
flowchart, con attivit rappresentate tipicamente da rettangoli e punti di decisione da rombi. Lo standard BPMN
definisce alcuni elementi grafici di base, generalmente sufficienti per modellizzare una vasta casistica di processi, e ai
quali comunque si possono aggiungere integrazioni ed elementi addizionali per dare maggiore efficacia rappresentativa
nei casi di processi molto complessi ma senza modificare limpostazione base della notazione usata.
Le quattro categorie fondamentali di elementi grafici sono le seguenti:
- Elementi di flusso (flow object)
- Connettori (connecting object)
- Corsie (swimlane)
- Artefatti (artifact)

3. Elementi di flusso (flow object)

Evento: rappresentato da un cerchio e rappresenta qualcosa che avviene nel corso di un processo. Gli eventi
possono avere una causa che li determina (trigger) e un possibile esito (result). Ci sono tre tipi di eventi a
seconda della loro collocazione allinterno del flusso di un processo: inizio (start), evento intermedio (intermediate) e
termine (end) (figg. 1, 2, 3):

fig. 1. evento start

fig. 2. evento intermediate

fig. 3. evento end

Attivit (activity): rappresentata con un rettangolo smussato, indica genericamente un compito o operazione svolti
allinterno del processo considerato (fig. 4). Unattivit pu rappresentare un compito elementare e atomico (task)
ossia non ulteriormente scomposto nellanalisi del processo in questione, oppure un sotto-processo che potr venire
ulteriormente scomposto nei suoi task elementari. In questo secondo caso si usa apporre il simbolo + nella parte
bassa centrale del rettangolo (fig. 5)

1 Questi appunti sono da considerarsi UNICAMENTE come supporto didattico per il corso di Gestione dellInformazione e delle
Aziende in Rete dellUniversit degli studi di Padova. Ogni altro uso richiede un esplicito consenso.
fig. 4. Attivit elementare (task)

fig. 5. Attivit da intendersi come sottoprocesso

Diramazione (gateway): simboleggiata con un rombo (fig. 6), definisce i punti del processo in cui i flussi delle attivit
divergono oppure convergono. utilizzata per rappresentare i tradizionali punti di decisione come nei classici flow
chart, ma anche semplici biforcazioni del flusso delle attivit in attivit parallele o viceversa il ricongiungimento di
attivit parallele in un flusso unico. Opportuni simboli di chiarimento potranno specificare il tipo di meccanismo di
controllo dei flussi di attivit che si biforcano o convergono. Ad esempio, una biforcazione o ricongiungimento in due
attivit parallele si pu indicare con un + allinterno del rombo (NB: versione BPMN 2.0). Nel caso di

no

+
yes

6a)
6b) 6c)

Fig. 6a. Diramazione (gateway). 6b. Biforcazione con due percorsi alternativi. 6c b)

4. Connettori (connecting object)

Se in un processo gli elementi di flusso (eventi, attivit o diramazioni) sono ci che avviene effettivamente, essi
devono essere logicamente collegati tra loro. A ci servono i connettori.

Connettore sequenziale (sequence flow): si disegna con una freccia piena (fig. 7.) ed usato per indicare lordine
logico-sequenziale tra attivit o eventi di un processo.

fig. 7. Connettore sequenziale

Flusso di messaggio (message flow): rappresentato da una linea tratteggiata con una freccia vuota (fig. 8), simboleggia
il fatto che un messaggio viene scambiato tra due diverse attivit o entit partecipanti al processo, una che trasmette e
laltra che riceve il messaggio.

fig. 7. Messaggio

Associazione (association): indicata con una linea a puntini e una freccia a punta aperta (fig. 9), usata per indicare un
semplice legame tra dati, testi e altri oggetti. Sono usate anche per indicare gli input e gli output delle attivit.

fig. 9. Associazione

5. Diagrammi elementari

La notazione fin qui descritta sufficiente per realizzare modellazioni semplici di processi aziendali, senza andare a un
livello eccessivo di dettaglio e mantenendo per questo unelevata leggibilit anche da parte di non specialisti. A titolo di
esempio, si riporta di seguito (fig. 10) la modellazione di un processo di pagamento di un bene acquistato cos come
descritta in White (2010). Sul diagramma sono riportate a scopo didattico anche le spiegazioni dei vari tipi di simboli
usati.

Fig. 10. Esempio di diagramma di processo

6. Corsie

Servono a specificare lorganizzazione delle attivit e dei relativi flussi in gruppi diversi in relazione alle funzioni
organizzative coinvolte, alle responsabilit operative e di gestione, ecc. La BPMN ha due tipi di corsie.

Corsia di ununit organizzativa (pool): rappresenta unentit organizzativa ben definita che svolge un proprio processo
eventualmente interagendo con altre unit organizzative (fig. 11). La notazione grafica un rettangolo e serve a
distinguere ci che viene svolto da quella unit organizzativa rispetto a ci che responsabilit di altri e sar contenuto
in altre corsie.

u
N n
o i
m t
e
Fig. 11. Corsia di ununit organizzativa

Le corsie sono spesso utilizzate nel caso di macroprocessi che coinvolgono due o pi entit di business distinte e
vengono fisicamente separate nel BPD. Le attivit contenute in ogni corsia sono considerate come facenti parte di
singoli processi separati che per interagiscono. Cos pu accadere pertanto che il flusso di processo di ogni attivit
rimanga interamente dentro la propria corsia, ma che ci siano connessioni come ad es. messaggi.

Sottocorsie (lane): sono una suddivisione della corsia di ununit in partizioni che coprono lintera lunghezza della
corsia, verticalmente o orizzontalmente (fig. 12). Sono usate per specificare ulteriormente lorganizzazione delle attivit
nel processo rispetto alle componenti organizzative.

N
N u o
o n m
i e
m t
N
e o
m
e

fig. 12. Sottocorsie allinterno di una corsia

Nellesempio di fig. 13 (tratto da White 2004) si riporta un BPD relativo allinterazione tra due processi: quello
realizzato da un paziente e quello di uno studio medico. I processi interagiscono tramite flussi di messaggi. Come si
nota, la potenza descrittiva della BPMN superiore a quella dei semplici flow chart.
Fig. 13. Esempio di BPD con due corsie distinte

Nellesempio di fig. 14, sempre tratto da White 2004, si rappresenta invece luso di diverse sottocorsie.

fig. 14. Esempio di BPD con pi sottocorsie

Si noti la differenza essenziale nelluso di corsie e di sottocorsie. Mentre le corsie sono destinate a rappresentare
processi distinti effettuati da entit diverse ma che interagiscono, le sottocorsie sono usate pi efficacemente per
rappresentare lo stesso processo il cui flusso viene spezzato in sottoprocessi o attivit di cui sono responsabili specifiche
unit organizzative o individui. Si noti che in questo secondo esempio sono i flussi delle attivit ad attraversare i confini
delle sottocorsie, mentre non vi sono connessioni tramite flussi di messaggi (essendo questi impliciti nella sequenza
logica delle attivit).

7. Artefatti (artifact)

Gli artefatti costituiscono ulteriori simboli che possono essere aggiunti a un BPD per specificare ulteriori oggetti o
entit che hanno rilevanza per un processo, chiarire raggruppamenti logici o operativi, aggiungere annotazioni e
spiegazioni, ecc.

Dati (data object): servono a descrivere i tipi di dati che sono necessari o prodotti da unattivit. Sono collegati alle
attivit attraverso il connettore associazione (fig. 15).
Fig. 15. Oggetto dati

Raggruppamento (group): rappresentato da un rettangolo arrotondato con tratto punto-linea, serve a scopo di
specificazione, analisi e documentazione (fig. 16). In altri termini serve a chiarire ulteriormente a chi legge il BPD
lorganizzazione del processo, ma non fa parte di per s dei flussi o del contenuto del processo stesso.

Fig. 16. Raggruppamento

Nota (annotation): permette al modellista di aggiungere un testo di chiarimento o commento al fine di fornire ulteriori
informazioni a chi deve interpretare il BPD (fig. 17).

Testo di
annotazione,
commento, ecc.

Fig. 17. Nota

In alcuni casi i modellisti creano e aggiungono propri simboli per fornire ulteriori dettagli al BPD. Tali simboli,
comunque, non modificano la struttura base del processo, che rappresentata dalle attivit, dalle diramazioni, dai
connettori.

8. Utilizzo della BPMN

In generale, esistono due tipi di diverse situazioni in cui la BPMN viene utilizzata. La prima si riferisce al caso dei
processi che si svolgono interamente in azienda; possibili esempi sono i diagrammi di fig. 10 e di fig. 14. I flussi delle
attivit rimangono essenzialmente entro la corsia del processo non attraversando mai i confini dellunit organizzativa
coinvolta. Flussi di messaggio possono peraltro attraversare i confini della corsia ovvero dellunit organizzativa. Un
classico caso di processi interni cos modellizzati quello dei processi che sono da considerarsi privati ossia
esclusivamente interni a unazienda o unit organizzativa: le attivit interne non sono direttamente visibili dallesterno
(ad es. da un cliente).
Il secondo tipo di situazioni si riferisce a processi collaborativi tra due o pi entit di business (aziende,
organizzazioni, unit, ecc.). I diagrammi assumono il punto di vista generale di una terza parte come osservatore
esterno. Ciascuna entit sviluppa un proprio processo ma ci sono momenti di interazione (ad es. scambi di messaggi)
tra attivit dei distinti processi: tali momenti di interazione sono quelli che sono visibili dallesterno ossia anche senza
che siano noti i dettagli interni delle attivit di ciascun processo. Nel caso dei processi collaborativi in genere ciascuno
di essi modellato a un livello di dettaglio non troppo spinto, ossia si rimane agli elementi generali del processo
(naturalmente sono possibili eccezioni). Un esempio di BPD di questo tipo quello presentato prima in fig. 13.

9. Livelli di dettaglio

Come gi in altri tipi di notazione (flow chart, IDEF, ecc.), anche usando la BPMN si pu scegliere di modellare un
processo spingendosi a livelli di dettaglio molto spinti (ad es. la singola operazione o elaborazione elementare) o
rimanere a livelli pi elevati (macroattivit, ecc.). Andare a livelli di dettaglio pi profondi significa in sostanza
scomporre le attivit nelle singole sotto-attivit, e cos via. La scelta del livello di dettaglio dipende da molti fattori, e
non sempre facile. Innanzitutto dipende dallobiettivo dellanalista: in generale, se si deve fornire un BPD che sia
direttamente di utilizzo per la programmazione potrebbe essere necessario spingersi a un livello molto profondo, mentre
se ci si limita a una descrizione del processo che si focalizza su altri aspetti (ad es. solamente i punti di interazione con
altri processi) in tal caso il dettaglio di alcune sotto-attivit potrebbe essere trascurato. Vi sono poi situazioni in cui una
scomposizione dettagliata delle sotto-attivit o operazioni che compongono una certa attivit inutile o addirittura
impossibile: ad es. quando non possibile scomporre in modo chiaro unattivit in una sequenza logica di sotto-
operazioni che si ripetono sempre nello stesso modo. Ad es. vi sono attivit che comportano decisioni o valutazioni
umane non formalizzabili a priori, o incorporano un determinato grado di incertezza o variabilit che loperatore risolve
al momento sulla base della propria esperienza; in tali casi lanalista pu dover fermare la scomposizione del processo a
livello di una descrizione generale, non potendo spingersi oltre.
La scomposizione a livelli di dettaglio successivi unoperazione che spesso si svolge per gradi: si disegna innanzitutto
un diagramma a livello di macroattivit, e poi lo si scompone successivamente. Nelle figg. 18 e 19, riprese da White
2004, si evidenzia il BPD di un processo a modesto livello di dettaglio che poi viene scomposto.

fig. 18. Esempio di BPD che si ferma a un basso grado di dettaglio

fig. 19. Lo stesso processo di cui alla fig. 18 ma scomposto a un livello di dettaglio pi spinto

10. Cenni alle notazioni aggiuntive

Nei diagrammi pi completi possono comparire altri elementi che specificano alcuni dettagli del processo, cos come
indicato nelle varie release della notazione BPMN (per riferimenti vedi ad es.
http://www.omg.org/spec/BPMN/1.2/PDF). Nella fig. 20 sono riassunti ad es. i simboli che specificano i diversi tipi di
evento che possono innescare un qualche tipo di attivit o decisione (eventi catching con il simbolo dentro il cerchio
di colore chiaro) oppure che sono da esse generati (eventi throwing - con il simbolo dentro il cerchio di colore scuro).
Gli eventi di inizio (start) possono essere solo catching, e quelli di fine (end) solo throwing, mentre quelli
intermedi possono essere entrambi: in corrispondenza a questi il cerchio esterno sar a linea singola sottile, a linea
singola spessa, oppure a doppia linea. Vediamo nel dettaglio il significato degli eventi riportati nella fig. 20:
- messaggio (message): levento consiste nella ricezione o invio di un messaggio
- timer (non per eventi end): viene specificato che deve passare un certo periodo di tempo oppure si deve
attendere un certo momento (data/ora) perch il processo continui
- errore (error non per eventi start): significa una situazione anomala che comporta un evento di gestione del
processo (che pu essere genericamente descritto a margine), linterruzione prematura del processo stesso, o
unattivit non specificata
- cancellazione (cancel non per eventi start): tipico in processi che riguardano transazioni; questo evento
significa la cancellazione della transazione stessa, con il possibile invio di messaggi alle parti coinvolte.
- compensazione (compensation): il verificarsi di questo evento significa la necessit che una certa attivit
complementi e compensi lo svolgimento di unaltra attivit
- condizione (conditional non per eventi end): usato per determinare lavvio di una certa attivit nel
momento in cui si verifichi una condizione esterna al processo (ad es. il cambiamento nello stato
dellambiente)
- legame (link non per eventi start): servono per collegare due sezioni diverse di un processo o denotare cicli
- segnalazione (signal): significa lemissione di un segnale che determina linizio di unattivit o ne lesito
- terminazione (terminate solo per eventi end): tutte le attivit del processo terminano istantaneamente al
verificarsi di questo evento
- multiple: significa che lavvio o termine di unattivit sono legati al verificarsi di molteplici eventi insieme, che
possono essere specificati a margine

fig. 20: tipi di eventi e loro simbologia

Per compattare la rappresentazione, i simboli di cui in fig. 20 possono essere direttamente sovrapposti al bordo
dellattivit da cui hanno avvio (fig. 21). In tal caso si intende implicitamente la presenza di una biforcazione.
Per ulteriori dettagli si rinvia al manuale reperibile in http://www.omg.org/spec/BPMN/1.2/PDF

Approvazione Continua col


richiesta processo...

Spedito avviso al
richiedente

Fig. 21. Evento sul bordo di unattivit

Riferimenti

White S. (2004), Introduction to BPMN, reperibile in http://www.bpmn.org/Documents/Introduction_to_BPMN.pdf


OMG (2009), Business Process Model and Notation, reperibile in http://www.omg.org/spec/BPMN/1.2/PDF

Potrebbero piacerti anche