• Non ci sono risultati.

3.2 Stato della Ricerca

4.1.3 BPMN: Pro e Contro

Nella presente sezione riassumeremo i vantaggi maggiori ed i limiti principali della notazione BPMN.

Indubbiamente una delle propriet`a pi`u apprezzate di BPMN `e la possibilit`a di definire livelli di astrazione molto diversi per uno stesso processo di busi- ness.

BPMN nasce con l’intento di costituire uno strumento comprensibile a tutti gli utenti coinvolti nella modellazione e realizzazione dei processi, rappresen- tati sinteticamente dalle seguenti categorie:

• analisti di business, preposti alla modellazione iniziale dei processi, tipicamente per mezzo di formalismi ad alto livello;

• sviluppatori, responsabili dell’implementazione dei processi di business specificati, attraverso l’utilizzo delle tecnologie adeguate;

• utenti responsabili della gestione e del monitoraggio dei processi messi in esecuzione.

In effetti la modellazione di un business process molto spesso inizia con la rappresentazione di attivit`a di livello piuttosto alto, che racchiudono un in- sieme pi`u o meno esteso di funzionalit`a. Solo in un momento successivo le macro-attivit`a vengono dettagliate a grana pi`u fine ed eventualmente model- late in diagrammi separati. Consideriamo ad esempio un generico processo di e-mail voting cos`ı come presentato in [87]. La modellazione potrebbe inizia- re con una rappresentazione delle attivit`a principali cos`ı come rappresentato

in Figura 4.12. Una prima approssimazione (a) specifica solo le due macro-

Fig. 4.12: Diagramma BPMN e-mail voting

attivit`a di discussione e votazione, mentre un diagramma leggermente pi`u espressivo (b) pu`o indicare ad esempio che il processo viene attivato un gior- no specifico della settimana (“Friday”) e che pu`o essere ripetuto per diversi temi di discussione (“New discussion required”).

In base alle esigenze e al livello di dettaglio che si vuole esprimere, `e pos-

Fig. 4.13: Diagramma BPMN e-mail voting - Discussione

sibile raffinare ulteriormente i diagrammi, ad esempio inserendo annotazioni di carattere informativo, associando degli artefatti che specifichino il tipo di

file che intervengono o semplicemente espandendo i sottoprocessi. Le Figure 4.13 e 4.14 modellano rispettivamente il sottoprocesso di discussione (Discus- sion) e votazione (Voting). Per una questione di spazio evitiamo di riportare il diagramma completo del processo di e-mail Voting, tuttavia dagli esempi forniti si intuisce quanto possa cambiare il livello di dettaglio di un processo e come quindi lo stesso diagramma possa assumere capacit`a espressive estre- mamente diverse. Oltre ad essere piuttosto potente, BPMN `e caratterizzato

Fig. 4.14: Diagramma BPMN e-mail voting - Votazione

da una notazione friendly ed espressiva, in parte grazie alla modellazione in stile flow chart, che riutilizza simboli ed elementi noti al modellatore.

Come abbiamo gi`a specificato, BPMN `e attualmente gestito dal gruppo OMG [105] e rappresenta la notazione standard per la modellazione di processi di business. La standardizzazione di BPMN costituisce un altro punto a suo favore dal momento che, come in molti altri contesti, l’utilizzo di meccanismi standardizzati permette lo scambio agile di informazioni tra entit`a diverse (gruppo di lavoro, dipartimenti o organizzazioni esterne).

Che BPMN sia il formalismo principe nell’ambito della modellazione di busi- ness process `e confermato dal successo riscosso sia tra gli utilizzatori che tra gli sviluppatori, infatti ad oggi si contano pi`u di 70 implementazioni. Inoltre non `e da escludere che la spinta competitiva fornita dal considerevole numero di implementazioni possa accelerare lo sviluppo di sistemi per la gestione di processi di business (BPMS) via via pi`u efficienti e potenti.

Gli strumenti software attualmente esistenti in grado di supportare la notazione BPMN sono molteplici ed offrono funzionalit`a che spaziano dalla modellazione alla gestione di processi. Nella sezione 4.1.2 abbiamo intro- dotto Intalio|BPMS, uno strumento che testimonia la possibilit`a di riuscire ad ottenere processi di business (BPEL) completamente ed automaticamente eseguibili a partire da diagrammi BPMN.

BPMN mette a disposizione un meccanismo per generare ed eseguire processi di business (BPEL) a partire da diagrammi BPD. Un processo sviluppato da un analista di business pu`o essere trattato direttamente da un engine BPM senza la necessit`a di essere interpretato da esseri umani e convertito in altri linguaggi. Questo aspetto pu`o costituire un fattore fondamentale per il su- peramento del cosiddetto business-IT gap [78].

Dunque i punti a favore di BPMN sono vari e alcuni di loro hanno un peso notevole nell’ottica dello sviluppo rapido ed efficiente di software. E’ per`o opportuno passare ad analizzare l’altra faccia della medaglia, ovvero i punti che, a nostro parere, rappresentano delle limitazioni. Precisiamo che alcune delle considerazioni che esprimeremo sono legate agli obiettivi che in-

tendiamo perseguire (in primis il soddisfacimento dei requisiti RUPOS). Per quanto l’impatto con BPMN possa essere positivo, ci sono alcuni aspetti della notazione che non `e opportuno ignorare. Ricordiamo a tal proposito che allo stato attuale l’ultima versione stabile della notazione BPMN `e la 1.2, mentre la 2.0 si trova ancora nello stato di versione beta, e non sono state diffuse informazioni chiare sulla durata della situazione attuale. Cos`ı come non `e possibile fare previsioni sull’evoluzione a breve termine, per la stessa ragione non `e chiaro in che misura differir`a la prossima versione ufficiale dalla versione beta corrente e che impatto avranno gli eventuali cambiamenti. La mancanza di una versione ufficialmente stabile di BPMN e di previsioni a breve termine `e probabilmente una della cause per la particolare pruden- za adottata dalle aziende che si occupano di soluzioni software per il BPM. Infatti molti dei BPMS e degli strumenti di modellazioni per BPMN non supportano ancora BPMN 2.0, precludendo dunque all’utente l’utilizzo del- le nuove caratteristiche messe a disposizione dalla nuova versione (supporto delle conversazioni, formato di scambio, etc.).

Una delle caratteristiche che limita maggiormente BPMN per i nostri pro- positi `e legato agli aspetti formali della notazione. Come specificato nella sezione 2.4, uno degli obiettivi del progetto RUPOS `e l’individuazione di una notazione grafica con specifiche caratteristiche formali che consentano l’as- sociazione di una precisa semantica ai modelli rappresentati, la realizzazione di controlli su tali modelli e la verifica di propriet`a. Per quanto riguarda BPMN, nel corso degli ultimi anni, probabilmente in seguito alla notevole popolarit`a acquisita, sono stati condotti alcuni studi volti alla cattura della semantica della notazione. Alcuni di questi studi si sono concentrati su un

sottoinsieme degli elementi [188], altri ancora stanno venendo alla luce in questi ultimi mesi ([44], [26]). In definitiva l’impressione che abbiamo rice- vuto ci ha portato a pensare che allo stato attuale manchino degli approcci e degli strumenti consolidati per l’analisi semantica e la verifica formale della notazione.

Le limitazioni riscontrate ci hanno portato alla conclusione che nonostante BPMN non sia in grado di coprire interamente i requisiti necessari per rag- giungere i nostri obiettivi, `e comunque possibile utilizzare il suo contributo nell’ambito del progetto; infatti crediamo che attraverso un’opportuna inte- grazione con altri strumenti sia possibile sfruttare al meglio le sue potenzialit`a e colmare le carenze evidenziate.