Introduzione
Il capitolo presenta il contesto, gli obiettivi e la struttura di questa tesi. Esso mette in risalto la rilevanza
di avere un metodo di valutazione per i prodotti di Business Process Management.
1.1
Ogni societ elabora processi di business. Tali processi di business rappresentano una sequenza
controllata di attivit atti alla creazione di un bene o servizio. Il grado di organizzazione di questi processi
di business determina il successo di unorganizzazione, incrementando la soddisfazione del cliete e la
competizione aziendale sul mercato.
I processi di business possono essere visti come un insieme di attivit collegate e correlate tra di loro che
vengono progettate per acquisire un certo input e trasformarlo in un output specico.
Tutte queste attivita` sono collegate le une con le al- tre, in modo tale che esse accadano nel giusto
momento e nel giusto ordine. Linput di questo processo di business `e la richiesta del cliente e loutput `e
il contratto rmato della polizza assicurativa
Fattori come la globalizzazione, le opportunit
Di e-business, linstabilit`a
Politica porta ad un mercato caratterizzato da incertezza nel quale unorga- nizzazione deve costantemente
adattarsi. Se unorganizzazione non cambia e non si adatta al suo ambiente, allora deve arontare il
rischio di essere esclusa dal mercato [4]. Quindi i cambiamenti organizzativi sono fondamentali per la
sopravvivenza di unorganizzazione. Tradizionalmente vengono individ- uati due tipologie di
cambiamenti: quelli rivoluzioanari e quelle evolutivi. I primi sono i cambiamenti di tipo radicale che si
concretizzano nei progetti di reingegnerizzazione dei processi di business e che cambiano completamente
Le modalit
Operative di unorganizzazione. Il secondo tipo di cambiamento
`e invece piu` graduale e permette unadattamento delle modalit`a operative in base allevolversi della
situazione del mercato. Entrambi questi tipi di cambiamenti necessitano delle tecniche e metodologie per
la loro gestione. Il Business Process Management `e un metodo che facilita la gestione dei cambiamenti
che deve arontare unorganizzazione. In particolare, il Busi- ness Process Management (BPM) `e una
disciplina gestionale che si occupa di descrivere e gestire i processi di business in un organizzazione.
Lobiet- tivo del Business Process Management `e quello di raggiungere gli obiettivi dellorganizzazione
allineando i processi di business con questi obiettivi e migliorando di continuo questi processi.
Nellera dellimpresa digitale la gestione dei processi di business viene coadiuvata mediante lutilizzo di
sistemi software che sono in grado di ge-
Piu` tipi di attivit`a e di utenti. Inoltre lavvento del Web ha richiesto che queste
applicazioni fossero accessibili direttamente sia ai clienti che ai part- ner di
business. Il trend mut`o dal programmare le applicazioni alintegrare le
applicazioni esistenti. Nel corso degli anni 70 e 80 i sistemi informa- tivi
continuavano ad essere incentrate sui dati. Lattenzione sulla tecnologia IT era
incentrata sullo storage, recupero e presentazione dellinformazione vista prima
di tutto come dati. Solo a partire dagli anni 90 si inizio` a porre lenfasi sui
processi. La necessit`a di adeguare continuamente i processi di business di un
organizzazione al mutare delle esigenze del mercato, porto` alla creazione di
metodologie in grado di comporre e riutilizzare le appli- cazioni esistenti
considerandole come una sequenza di attivit`a. Il trend dei
Sistemi informativi pass
Da essere orientato ai dati ad essere orientato ai
Processi. Il risultato dellevoluzione dei trend citati ha portato alla nascita dei
moderni sistemi BPM.
I sistemi BPM sono sistemi software che permettono di denire i proces- si di
business mediante lutilizzo di notazioni adatte allo scopo, di metterli in
esecuzione e di controllarne lesito. Il supporto di questi sistemi diventa cruciale
in termini di competitivit`a sul mercato per lorganizzazione. In- fatti
permettono sia di gestire attivita` che devono essere svolte da agenti umani sia
di automatizzare completamente altre attivit`a, aumentando cos` lecienza di
un processo di business. Essi sono composti da diversi stru- menti che
permettono un completo supporto al BPM. Per questo motivo sono anche deniti
BPM suite [16]. Obiettivo primario dei BPMS `e gestire un processo di business.
Un processo di business pu`o essere visto come uno
1.3
Capitolo 2
Stato dellarte
Descrizione capitolo
2.1
Processi di business
Ogni prodotto di qualsiasi natura che una compagnia immette sul mercato `e il
risultato di una serie di attivita` che sono state eseguite per la sua creazione. La
tecnologia dellinformazione, in particolare nei sistemi informativi azien- dali,
gioca un ruolo chiave nella gestione di queste attivita` e permette la loro
esecuzione coordinata. In molte compagnie sussiste ancora il gap tra aspetti di
business organizzativi e tecnologia dellinformazione presente [2]. Il superamento di questo gap permette di fornire le basi tecniche per la creazione
Rapida di nuove funzionalit
Che portano alla realizzazione di nuovi
prodotti
Permettendo quindi alla compagnia di essere sempre competitiva sul mer- cato.
Strumento chiave anche questo sia possibile `e considerare queste attivit`a
tutte appartenenti ad uno o piu` processi di business. Per questo motivo
possiamo denire un processo di business come un insieme di at- tivit`a eseguite
in coordinazione con lambiente organizzativo e tecnico che permette di dare
loro unorganizzazione e aumentare la comprensione delle loro relazioni.
Queste attivit`a insieme realizzano un obiettivo di business (business goal).
Possono essere eseguite direttamente da un agente umano (manualmente oppure
aiutato da un sistema informativo) oppure possono essere attivate
automaticamente senza il suo coinvolgimento. Ogni processo di business viene
attivato da una singola organizzazione ma potrebbe anche interagire con processi
di business eseguiti da altre organizzazioni.
2.1.1
I processi di business possono denire sia strategie di business ad alto livello sia
processi di business operativi [44]. Tra questi due estremi esistono dier- enti
livelli che caratterizzano un processo di business (gura 2.1). Al livello
Piu`
In alto un processo di business serve per descrivere la strategia della
Compagnia, denendo la rotta da seguire a lungo termine per sviluppare un
vantaggio competitivo sostenibile sul mercato.
Al secondo livello dello schema, la strategia di business viene decomposta in
obiettivi operativi di business. Questi obiettivi possono essere organizzati in
modo tale che ognuno possa essere ulteriormente decomposto in sotto- obiettivi.
Al terzo livello si trovano i processi di business organizzativi. Questi sono
processi ad alto livello che tipicamente vengono specicati in forma testuale dai
loro input, dai loro output, dai loro risultati attesi e dalle loro dipendenze con gli
altri processi di business organizzativi.
Per questi tre livelli sono disponibili delle tecniche informali e semiformali che
permettono di descrivere in forma testuale e per mezzo di diagrammi la strategia
della compagnia, i suoi obiettivi e i suoi processi di business organizzativi.
Al di sotto di questi livelli esistono i processi di business detti operativi. A
dierenza di quelli organizzativi caratterizzati da funzionalit`a di business ad
alto livello, in questi processi vengono denite nel dettaglio le loro attivita` e le
relazioni tra di esse ma non viene denito alcun tipo di implementazione.
Questi ultimi sono le basi dei processi di business implementati poich`e essi
contengono le informazioni sullesecuzione delle attivita` dei processi e
sullambiente tecnico e organizzativo sul quale essi sono in esecuzione.
Nel corso della trattazione discuteremo del ruolo dei sistemi informati- ci che
hanno nella descrizione e nella esecuzione dei processi di business operativi.
Un altro tipo di classicazione riguarda il grado di relazione che un pro- cesso di
business ha con un altro. Un processo di business che non ha nessun tipo di
legame con un altro viene detto intraorganizzativo. Questi tipi di processi hanno
come obiettivo primario quello di snellire i processi interni eliminando le
attivit`a che non portano valore al processo. Viene denito uno schema delle
risorse dellorganizzazione a cui vengono sistematicamente as- segnate delle
attivita` del processo in base alla loro competenza. I tradizion- ali sistemi di
gestione dei workow che vedremo piu` avanti sono adatti allo scopo. Quando
invece un processo necessita di interagire con un altro allora si parla di
coreograe di processi. In questo caso processi facenti parte di una coreograe
necessitano di tutta una serie di tecnologie abilitanti al loro scopo. Queste
tecnologie riguardano i protocolli di comunicazione, il formato dei dati
scambiato e il denire una rappresentazione comune dei vari pro- cessi di
business. Vedremo nel paragrafo 2.2.3 un paradigma architetturale adatto a
questo scopo (SOA).
Un altro tipo di classicazione
Essere fatto sulla base del loro grado
Di:
pu
automazione
ripetizione
strutturazione
Per quanto riguarda il grado di automazione esistono processi di business che
non richiedono lintervento umano. In questo caso si parla di proces- si di
business pienamente automatizzati. Un esempio sono le tecnologie EAI
(Enterprise Application Integration) il cui compito `e quello di integrare
Sistemi informatici eterogenei rendendo questa integrazione trasparente allintervento umano. Esistono poi processi che non possono essere in alcun modo
automatizzati ma richiedono necessariamente lintervento umano. Un esempio
sono tutte quelle applicazioni che richiedono linserimento di dati in una
maschera al ne di portare a termine unoperazione. Molti processi di business
invece richiedono sia attivit`a di tipo manuale sia attivit`a di tipo automatiche.
Quindi sono state sviluppate delle tecnologie che permettono di gestire e
sincronizzare entrambi i tipi di attivit`a.
Rispetto al grado di ripetizione `e possibile valutare quale tipo di tec- nologia `e
piu` adatta a supportare un determinato processo di business. Nei processi di
business dove il grado di ripetizione `e alto sono richieste tecnolo- gie che
permettano la modellazione e lesecuzione automatica dei processi. Questo tipo
di tecnologie comportano un investimento di una certa consis- tenza ma
consentono la corretta esecuzione dei processi ad alta ripetitivita`. Esistono
invece dei processi che invece sono caratterizzati da uno scarso o nullo grado di
ripetitivit`a. Questi processi vengono deniti processi di busi- ness collaborativi.
In questi processi lutilizzo delle tecnologie di supporto non ha come obiettivo
quello di ottimizzare lecienza ma quello di moni- torare il processo e di
scoprire eventuali relazioni causali tra i vari task di progetto. Gli strumenti che
andremo ad analizzare permettono di gestire entrambi i tipi di processi descritti.
Per ultimo si ha una classicazione dei processi di business in base al loro grado
di strutturazione. Si denisce workow di produzione, un procesSo di business il cui modello descrive perfettamente le sue attivit
I vincoli
Tra queste in modo completo. In questo modo il processo si denisce completamente strutturato. Ad esempio in questi processi sono deniti tutti i vincoli
decisionali del processo in modo che nessun tipo di decisione possa essere presa
da parte di un intervento umano. Questi tipi di processi, inoltre, sono altamente
ripetibili. I sistemi tradizionali di gestione dei workow sono adatti a
supportarli. Si denisce invece attivit`a ad hoc, un processo che non necessita di
essere denito completamente in quanto deve dare una certa
essibilit
Alloperatore umano di poter gestire parti del processo in base
Alla sue competenze. Quindi questi processi sono caratterizzati da un basso
livello di strutturazione e da un alto livello di essibilit`a. Anche per questi tipi
di processi esistono tecnologie in grado di supportarli.
2.1.2
Il paragrafo illustra prima di tutto la denizione di Business Process Management (par. 2.2.1). Poi presenta il concetto di workow (par. Subsec:Workow), i modelli che lo deniscono e larchitettura dei sistemi che
Lo gestiscono. Verr
Trattata larchitettura dei Web Service (par. 2.2.3).
I Web service sono la tecnologia che viene impiegata per gestire processi di tipo
business to business. Inne il paragrafo illustra concettualmente la struttura di un
sistema BPM (BPMS) (par 2.2.4).
2.2.1
Workow
Secondo il Workow Management Coalition (wfmc), un workow `e lautomazione di un processo di business in tutto o in parte durante la quale
documenti, informazioni e tasks vengono passati da un partecipante ad un altro
anch`e si possa raggiungere un obiettivo comune, utilizzando un in- sieme
predenito di regole. Un workow pu`o essere visto come un com- ponente di
un processo di business, in quanto consiste in una sequenza di attivit`a speciche
di una particolare applicazione attuate attraverso insiemi di istruzioni predeniti,
coinvolgendo sia procedure automatizzate che man- uali. Per questo si
dierenzia da un BPM che invece riguarda la denizione, lesecuzione e la
gestione di un processo di business indipendentemente dalle applicazioni che
praticamente svolgono i task del processo. Un workow viene descritto
attraverso tre modelli:
Modello di processo
Modello informativo
Modello organizzativo
Per descrivere i tre modelli verranno utilizzati due modelli per descrivere
I workow: quello del Workow Management Coalition [18] e il modello
WIDE (Workow on Intelligent and Distributed database Environment) [5].
Di seguito la descrizione dei tre modelli. Lutilizzo di questi due modelli
E della loro terminologia non fa perdere di generalit`a la descrizione dei tre
Modelli che costituiscono il workow.
Modello di processo
Utilizziamo la terminologia utilizzata dal Workow Management System per
denire un workow e metterlo in relazione con un processo di business. In
gura 2.2 lo schema della terminologia utilizzata per i vari componenti e le
relazioni tra di essi.
I componenti fondamentali di un workow sono:
Processo: un processo `e denito come la rappresentazione formale di un
processo di business in modo tale che la sua manipolazione sia pos- sibile per
mezzo di un workow management system (wfms). Questo
Modello graco delle reti di Petri si ispirano la maggior parte dei linguaggi di
modellazione dei processi esistenti.
Reti di Petri
Le reti di Petri sono dei modelli matematici utilizzati per descrivere i sistemi
distribuiti di tipo discreto, per i quali sono fondamentali le conseguenze locali
delle operazioni e linuenza locale degli stati degli oggetti [8]. In questa sede
non descriveremo il formalismo matematico di questo modello (per il quale si
rimanda a [36]), ma cercheremo di descrivere lutilizzo delle reti di Petri per
descrivere i processi di workow.
Le reti di Petri sono utili per la modellizzazione di sistemi il cui comportamento `e dominato da un usso di informazioni, oggetti, da logiche di
controllo e cos` via, cio`e da tutte quelle operazioni caratterizzate da un dare e
da un ricevere. Una rete di Petri viene visualizzata come un grafo diretto avente
due tipi di nodi: i posti, rappresentati da un cerchio, e da tran- sizioni,
rappresentati da rettangoli. Le reti di Petri sono un grafo bipartito cio`e linsieme
dei suoi vertici si pu`o partizionare in due sottoinsiemi tali che ogni vertice di
una di queste due parti `e collegato solo a vertici dellaltra. In particolare il
modello delle reti di Petri si fonda su questi concetti di base:
Un posto (place) rappresenta uno o piu` oggetti. Ogni oggetto `e sempre in
qualche stato.
Una transizione (transition) rappresenta uno o piu` operazioni, che sono solo
possibili a degli stati specici degli oggetti e che cambiano lo stato di uno
specico oggetto.
Una regola di occorrenza (occurrence rule) determina sotto quali stati di un
oggetto un transizione sia in grado di attivare (re - condizione di attivazione)
loperazione rispettiva e in che modo lo stato di un ogget- to cambia a seguito di
questa attivazione. Gli elementi che vengono utilizzati per denire le regole di
occorrenza sono i token (gura 2.7). Infatti una transizione viene attivata se e
solo se ogni posto di ingresso contiene almeno un token. La sua attivazione
comporta il consumo del token presente nei posti in ingresso e la conseguente
produzione di un token nel posto in uscita della transizione.
Il principio di localit`a permette di circoscrivere lazione della con- dizione di
attivazione di una transizione e il cambiamento di stato causato da questa solo a
quei posti che sono direttamente connessi alla transizione attraverso un arco. Al
contrario, lo stato di un posto
Inuenza solo le transizioni poste nelle immediate vicinanze del posto, e pu`o
solo cambiare dallattivazione (ring) di queste transizioni.
Il modello delle reti di Petri ad alto livello pu`o essere utilizzato per descrivere i
processi di workow. Questo formalismo permette in particolare di descrivere il
modello del processo di workow ma non il suo corrispettivo modello
informativo e organizzativo.
Un processo di workow deve essere delimitato da uno stato di inizio e da uno
stato di terminazione. Gli elementi che fanno parte delle reti di Petri devono
essere contestualizzati ai workow. I token possono assumere
I seguenti ruoli:
un oggetto sico, ad esempio un prodotto;
un artefatto informativo, ad esempio un messaggio;
una collezione di oggetti, ad esempio un magazzino di componenti;
un indicatore di stato, ad esempio lo stato in cui si trova il processo;
Figura 2.12: Tipologie di trigger di una rete di Petri che descrive un workow
Dopo aver descritto come le reti di Petri si adattano al contesto dei pro- cessi di
workow, mostriamo un esempio di processo di workow modelliz- zato tramite
le reti di Petri (gura 2.2.2). Il processo di workow descritto riguarda il
processo di prenotazione di una vacanza presso unagenzia di viaggio.
Per ulteriori approfondimenti si consiglia [35], [36] e [8].
Modello informativo
Il modello informativo di un workow descrive le informazioni ricevute, modicate o prodotte da un workow. Secondo il modello WIDE, il modello
informativo di un workow puo` essere denito in tre diverse modalita`:
1. Attraverso uno schema variabili del workow;
2. Attraverso un database condiviso con altri workow;
3. Attraverso documenti che vengono scambiati tra i diversi workow. Nel primo
caso viene denito nel workow uno schema delle variabili che
Hanno visibilit
Solo allinterno della particolare istanza del workow. Le
Istanze del workow non possono avere accesso alle variabili di unaltra
istanza: ognuna di queste possiede una propria copia dello schema delle
Del processo. Linterfaccia 3 con il sottosistema centrale denisce degli standard di comunicazione che permettono linteroperabilit`a di questultimo con
linvocazione di applicazioni installate su piattaforme software eterogenee. Il
sottosistema Other Workow Enactement Services rappresenta il gruppo di altri
Workow engine che per mezzo dellinterfaccia 4 possono interagire tra loro
grazie dei protocolli di scambio dati comuni. Il sottosistema Ad- ministration
and Monitoring Tools contiene gli strumenti che permettono di amministratore
lesecuzione di un workow e di tenerne monitorato lo stato. Anche questi
strumenti devono interfacciarsi al workow engine e lo fanno per mezzo
dellinterfaccia 5 che rappresenta uninterfaccia generica implementata con
diverse tecniche.
Gli strumenti BPMS che andremo ad analizzare sono il risultato di diver- si
componenti che seguono logicamente lo schema architetturale appena descritto. Limplementazione di questo modello architetturale ha subito delle
evoluzioni in base allaorare di nuove tecnologie e necessita` di integrazione
tra i vari processi di business. Descriviamo ora come `e stato implemen- tato
questo modello architetturale nei tradizionali workow management system. In
seguito nel prossimo paragrafo descriveremo la loro evoluzione nelle architetture
orientate ai servizi.
Nei tradizionali workow management system vi `e una separazione tra tempo
di costruzione (build time) e tempo di esecuzione (run time) di un processo di
workow (gura 2.16). In particolare a tempo di costruzione il processo viene
denito attraverso uno strumento di modellazione graca mentre a tempo di
esecuzione una istanza del processo viene eseguita dal workow engine. In base
al tipo di workow management system utiliz-
2.2.4
Sistemi BPMS
E i manager possono monitorarli e controllarli. I processi di business in esecuzione e quelli terminati possono essere analizzati per trovare margini di
miglioramento, creando un ciclo continuo di miglioramento del processo di
business.
Le operazioni citate possono essere racchiuse in un ciclo di vita di un processo di
business [44]. La gura 2.18 mostra lo schema del ciclo di vita di un processo di
business e i corrispettivi componenti di un sistema BPM. Il ciclo di vita di un
processo di business `e diviso in fasi che sono collegate le
Capitolo 3
3.1
Gli standard graci permettono agli utenti di esprimere sotto forma di diagramma il usso informativo, i punti di decisione e i ruoli dei processi di
business. Rispetto alle altre tipologie di standard, gli standard graci sono quelli
piu` human-readable e facili da comprendere senza che siano necessarie
conoscenze tecniche speciche. Tra gli standard piu` importanti troviamo:
Business Process Management Notation (BPMN)
Activity Diagram UML
Event-driven Process Chain (EPC)
Tra questi standard graci, Business Process Management Notation `e lo
standard scelto ai ni della nostra analisi in quanto attualmente lo stan- dard di
modellazione piu` utilizzato tra i vari produttori di strumenti BPM. Business
Process Management Notation sar`a loggetto del paragrafo 3.1.1. Vediamo ora
brevemente gli altri due standard graci citati.
3.1.1
Notazione BPMN
Business Process Model and Notation, BPMN, `e una notazione di modellazione per processi di business denito dallobject Management Group (OMG),
che mira a diventare uno standard de facto tra i vari standard graci di
modellazione di processi di business. La notazione nasce dallesi- genza di
creare un linguaggio di modellazione che fosse in grado di eliminare il gap
tecnico esistente tra le descrizioni dei processi di business per mezzo di
diagrammi di usso e le descrizioni di questultime in un linguaggio di
esecuzione (paragrafo 3.3). Per mezzo di questa notazione `e infatti possibile
mappare la descrizione visuale di un processo di business, descritta direttamente dagli analisti di business, nel linguaggio di esecuzione appropriato [28].
La modellazione del processo di business viene utilizzata per comunicare
Una vasta variet
Di informazioni ad un altrettanto vasto insieme di entit`a.
Per questo motivo BPMN `e stato ideato in modo da creare diverse tipologie di
modelli di business end to end. Secondo OMG, questi processi possono essere
classicati come:
1. Processi privati (interni)
2. Processi pubblici (pubblici)
3. Processi di collaborazione (globali)
I processi privati sono i processi interni a speciche organizzazioni e sono quei
tipi di processi che vengono deniti workow. Se vengono utilizzate le
Tit
Un processo di collaborazione ragura le interazioni tra due o piu` enDi business. Queste interazioni vengono denite come una sequenza di
4. Artefatti (Artifacts)
In particolare gli oggetti di usso sono divisi in:
Eventi
Attivita`
Gateways
Gli oggetti di connessione in:
Flusso di sequenza (Sequence Flow)
Flusso di messaggio (Message Flow)
Associazione (Association) Le swimlanes si dividono in
Pools
Lanes
Inne gli artefatti, che vengono utilizzati per fornire informazioni ulteriori circa
il processo, sono:
Oggetto di dati (Data Object)
Gruppo (Group)
Annotazione (Annotation)
Vediamo questi oggetti graci in particolare.
Evento Un evento `e qualcosa che accade durante il corso del processo di
business. Questi eventi inuiscono sullesito del usso del processo e
solitamente sono caratterizzati da una causa (trigger) e da un eetto (result).
Vengono rappresentati per mezzo di un cerchio e ne esistono tre di base: gli
eventi di inizio, intermedi al processo e di ne (gura 4.6).
Attivit`a Attivita `e un termine generico per indicare il lavoro che svolge
Un qualche entit`a. Unattivit`a pu
Essere atomica o composta. I tipi di
Attivit`a che fanno parte del modello di processo sono tre: il processo, il
sottoprocesso e il task. I task e i sotto-processi sono rappresentati con un
rettangolo arrotondato mentre i processi sono contenuti nei pool (gura 4.7).
Oggetto di dati Un oggetto di dati non ha alcun eetto sul usso di sequenza o
di messaggio ma fornisce informazioni circa quelle attivita che richiedono di
essere eseguite oppure cosa essere producono (gura 3.18).
Tipologia di eventi Gli eventi possono avere una dimensione di usso e una
dimensione riguardante la loro tipologia. Per quanto riguarda la prima
dimensione essi si dividono in (gura 3.21):
Eventi di inizio: indicano che un particolare processo ha inizio. Ven- gono
rappresentati con un cerchio.
Eventi intermedi: inuiscono sullandamento del usso di processo ma non
iniziano ne terminano il processo. Vengono rappresentati con un doppio cerchio.
Eventi di ne: indicano la terminazione di un processo. Vengo rapp- resentati
con un cerchio il cui bordo `e in grassetto.
Tipologie di ussi di sequenza La notazione BPMN denisce diVersi ussi di sequenza del processo di business. Abbiamo gi`a descritto due
Tipologie di ussi di sequenza: il usso normale e il usso di messaggio. Oltre
A queste due tipologie ne esistono altre:
Flusso di default: viene utilizzato nelle decisioni di usso di processo, sia
inclusive che esclusive, e stabilisce quale sia la condizione di usso di
Capitolo 4
Analisi BIZAGI
BPM