Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Gestione di flussi aziendali(detti workflow) in maniera centralizzata e il più possibile automatizzata.
Materie trattate: Sistemi Informatica Calcolo
W o r k f l o w M a n a g e m e n t S y s t e m
d i
A r m a t o D e s i r è e
C i g l i a n o F a b i o
S O M M A R I O
1 I ntr o d uz i one
io
2 W o r kfl o w
rkfl
2.1 Cosa sono i workflow
2.2 Tipi di workflow
2.3 Cosa sono i workflow management system
3 O bi etti vi
3.1 Modello di riferimento
3.1.1 Strumento di definizione di processi
3.1.2 Applicazioni clienti e applicazioni esterne
3.1.3 Strumenti di amministrazione e monitor
3.1.4 Motore di workflow
3.1.5 Interfaccia con altri WfMS
3.2 Strumenti software
3.2.1 Strumento di definizione di processi
3.2.2 Motore di workflow
3.2.3 Monitor e lo strumento di amministrazione
3.3 Linee guida di sviluppo
4 S tr u me n ti di svi l u p p o uti l i z z ati
svil utiliz
4.1 Jawe
4.1.1 XPDL: XML Process Definition Language
4.2 XAMPP: Apache web server, MySQL, PHP, Perl
4.2.1 Componenti di XAMPP
4.2.2 Come funziona XAMPP
4.2.3 PHP: Hypertext Preprocessor
5 I m pl em e nt az i o n e d el p r o g et to
io ro
5.1 CMS: Content Management System
5.1.1 Back-end dei dati
5.1.2 Visualizzazione dei dati
5.1.3 Amministrazione dei dati
5.2 Descrizione generale
5.3 Use case
5.3.1 Attori
5.3.2 Use case per il manager
5.3.3 Use case per l’employee
5.3.4 Use case per il customer
6 E s em pi o di a p pl i caz i o n e: i l C O M P R A
plicaz il
M A C C HI N E
6.1 Il portale dell’autoconcessionaria
6.2 Il flow chart
6.3 l’indagine statistica
7 C o n cl u si o ni p er s o n al i
ers ali
7.1 Percorso affrontato
8 Bi b l i o gr afi a
lio Armato Desirèe & Cigliano Fabio
1. Introduzione
I workflow management system (WfMS) sono applicazioni che gestiscono flussi di
lavoro. Qualsiasi azienda, amministrazione pubblica o ente commerciale segue dei protocolli
per gestire processi produttivi o amministrativi basati sul passaggio di informazioni o
documenti: questi iter possono essere schematizzati come flussi di lavoro a cui si riferiscono i
dipendenti e/o gli utenti.
Nella gestione tipica di questi flussi di lavoro molte energie vengono spese inutilmente
in due ambiti che non portano alcun risultato pratico. Da una parte si deve curare il passaggio
del lavoro o dei documenti, perdendo tempo e risorse nel cercare di capire che cosa si debba
fare di un certo oggetto o a quale ufficio debba essere mandato un incartamento. Dall’altra
parte molte delle attività svolte sono ripetitive e automaticamente gestibili da un’applicazione
software anziché da un essere umano.
I WfMS si propongono di automatizzare queste fasi dispendiose e non redditizie dei
flussi di lavoro con l’aiuto delle tecnologie informatiche. Il guadagno in efficienza portato dai
WfMS è proporzionale alla complessità del processo modellato e alla percentuale di attività
che possono essere rese automatiche di cui è composto.
Il progetto affrontato si propone di sviluppare un WfMS che sia compatibile con gli
standard in atto e di semplice utilizzo.
primo capitolo si affrontano le questioni principali del progetto: i workflow. Si
Nel
spiega cosa sono i workflow, i WfMS, come e dove vengono impiegati e quali sono i
problemi che li caratterizzano.
Nel secondo capitolo si definiscono gli obiettivi del progetto. Si presenta il modello di
riferimento per i WfMS seguito per il progetto, si delineano le applicazioni software
realizzate, infine si danno alcune linee guida seguite nello sviluppo.
Nel terzo capitolo si introducono gli strumenti software utilizzati per il progetto: il
workflow editor Jawe e il linguaggio Xpdl, l’ ambiente AMP XAMPP e il linguaggio PHP.
Jawe viene presentato mostrandone le caratteristiche salienti. Di XAMPP se ne descrive la
struttura, il funzionamento e le caratteristiche che lo rendono adatto per il progetto. 1
Armato Desirèe & Cigliano Fabio
Nel quarto capitolo si passa ad affrontare l’analisi del progetto. Dopo aver introdotto i
concetti fondamentali, si descrive il progetto con degli use case che ne sintetizzano le
funzionalità previste.
2. Workflow
In questo capitolo si introduce il concetto di workflow: si spiega cosa sono i workflow e
come si classificano, passando poi ad introdurre i workflow management system.
2.1. Cosa sono i workflow
Si definisce il workflow come “l’automazione di una parte o dell’intero processo
commerciale, dove documenti, informazioni e compiti vengono passati da un attore ad un
altro per ricevere un qualche tipo di azione, seguendo un determinato insieme di regole”.
No Respingi Notifica
richiesta accettazione
Revisione del
supervisore Si
No Si
Valutazione
requisiti Accettare
Accettazione richiesta? Aggiornare
richieste fondi
Valutazione
fondi
Figura 1: un esempio di processo
Dunque un workflow riassume una serie di procedure che definiscono un contesto di
lavoro complesso, dove più unità lavorative, siano esse risorse umane, gruppi di lavoro o
sistemi computerizzati, lavorano per un determinato fine. Ogni workflow è dunque composto
di un certo numero di processi, cioè procedure da seguire per ottenere un certo risultato da
determinate condizioni di partenza.
Ogni processo si può definire attraverso la sequenza di azioni che devono essere svolte
dai partecipanti, e attraverso l’evoluzione dello stato degli oggetti che lo attraversano. Un
2 Armato Desirèe & Cigliano Fabio
processo, ad esempio, può essere l’iter per una richiesta di acquisto dell’università, o le
procedure per ottenere una licenza edilizia nell’ambito della pubblica amministrazione
(Figura 1)
Le azioni che devono essere svolte nel processo sono chiamate attività del processo.
Ogni processo viene descritto dall’insieme di attività e dalla sequenza con cui vengono svolte.
Un’attività descrive un singolo passo del processo da eseguire: ad esempio prendere una
decisione, apporre una firma ad un documento, o stampare un elenco. Il processo ha sempre
una sola attività di inizio, in cui “entrano” gli oggetti che devono essere elaborati, ed
un’attività di fine da cui “escono” i prodotti del processo.
La sequenza di passi di un processo non è limitata ad essere una semplice sequenza
lineare. Si possono infatti avere ramificazioni e ricongiungimenti, a rappresentare attività che
devono essere svolte in parallelo o attività che devono essere svolte in alternativa le une alle
altre. Ad esempio in un’amministrazione comunale un certo incartamento può intraprendere
un percorso attraverso vari uffici, trovarsi ad essere elaborato contemporaneamente da due
uffici di controllo, per poi dover scegliere se essere mandato fra le pratiche urgenti o fra
quelle a bassa priorità, e così via.
Ogni processo è un’entità statica, una sorta di definizione di procedure e iter da
intraprendere: può essere eseguito più volte, cioè può avere più istanze, anche contemporanee.
Ogni istanza di processo ha una propria identità distinta, anche se condivide con le
altre istanze di processo la stessa sequenza di azioni da intraprendere. Un’istanza di processo
è dunque un’entità dinamica: ha una data e orario di nascita, dati registrati che cambiano di
attività in attività e, infine, ha anche una fine: la sua archiviazione.
2.2. Tipi di workflow
I workflow sono divisi in tre tipi per funzioni e capacità: produttivi, amministrativi e
collaborativi.
I workflow produttivi sono orientati alla produzione su grande scala. Gestiscono grossi
numeri di attività simili, ripetitive, prevedibili e il loro fine è ottimizzare la produttività intesa
come pezzi per unità di tempo. Un esempio di workflow produttivo può essere il processo di
richiesta di prestito alle banche o la presentazione di reclami alle assicurazioni. Tutti i
3
Armato Desirèe & Cigliano Fabio
processi del workflow sono orientati ad avere un alto livello di automazione, per trarre il
massimo vantaggio dall’assenza di componente umana.
I workflow amministrativi sono caratterizzati dall’avere facilità nel definire processi
diversi. Spesso si possono avere processi molto eterogenei che evolvono secondo le necessità
e l’esperienza acquisita nell’utilizzo. Ad esempio il workflow relativo alla gestione di uffici
comunali, dove i processi devono seguire l’evoluzione delle normative ministeriali. In questi
workflow la flessibilità è molto più importante della produttività.
I workflow collaborativi si focalizzano sugli strumenti di comunicazione e scambio di
informazioni fra gruppi di lavoro (grandi o piccoli che siano). Non c’è necessità di avere
un’alta produttività e i processi sono tipicamente solo vagamente definiti. Quel che conta è
avere strumenti di confronto e condivisione. Come esempio si può prendere l’iter di
risoluzione dei conflitti, o le procedure di negoziazione. Portato questo concetto agli estremi
si ha un workflow caratterizzato dalla più bassa produttività e dalla massima flessibilità nel
definire procedure: siamo nella situazione in cui ogni caso di lavoro richiede una procedura
diversa, creata ad hoc.
L’ordine con cui sono stati presentati i tipi di workflow (produttivo, amministrativo e
collaborativo) rappresenta anche l’ordine decrescente del grado di efficienza che il workflow
permette di raggiungere. Infatti il massimo guadagno di efficienza viene ottenuto in quei
processi quasi completamente automatizzabili, come i processi produttivi. Via via che
aumentiamo l’impatto delle risorse umane e della flessibilità dei processi, andiamo a perdere
sempre più uno dei principali vantaggi del workflow: l’automazione delle attività. Flessibile,
infatti, significa mutevole, non formalizzato, non definitivo e dunque non formalmente
modellabile come attività automatica.
2.3. Cosa sono i workflow management system
Si definisce il workflow management system (WfMS) come “un sistema che definisce,
crea e gestisce l’esecuzione di workflow attraverso l’uso di software, coinvolgendo uno o più
motori di workflow; e che è in grado di interpretare definizioni di processo, interagire con i
partecipanti del workflow e, se richiesto, invocare l’uso di applicazioni e strumenti
dell’information technology”.
4 Armato Desirèe & Cigliano Fabio
L’utilizzo di strumenti di workflow nell’ambito industriale e/o amministrativo è sempre
più diffuso, specie se si ha a che fare con processi coinvolgenti le nuove tecnologie. Questo
perché l’uso di workflow porta due diversi vantaggi: da una parte si assegna efficientemente il
lavoro a chi di dovere, dall’altra si automatizza il lavoro stesso.
La questione dell’assegnare i compiti si propone di risolvere le questioni del tipo “chi
deve fare cosa e quando”. Ogni lavoratore all’interno del workflow sa che, quando gli viene
sottoposto un lavoro, avrà a disposizione tutte le informazioni e gli strumenti necessari al
compimento della sua attività. Non gli mancherà nessuna delle componenti di cui avrà
bisogno. Questa gestione del lavoro può produrre grossi incrementi d’efficienza.
L’automazione del lavoro produce un ancor maggiore guadagno d’efficienza. Quelle
attività che sono puramente meccaniche e automatiche, che non hanno bisogno di alcuna
componente umana nello svolgimento, possono essere affidate agli strumenti di esecuzione
sotto il controllo diretto del workflow. Inviare una e-mail di conferma, stampare un
certificato, aggiornare un data-base sono azioni automatiche che non hanno bisogno dell’uso
della risorsa più costosa: l’uomo. Inoltre le attività automatiche godono della possibilità di
poter essere più facilmente svolte in parallelo, il che comporta ulteriori vantaggi.
A fianco di questi vantaggi tangibili vi sono anche tutta una serie di vantaggi che a
prima vista possono sfuggire. Infatti con l’utilizzo di workflow:
si ha una maggiore qualità del servizio, dovuta ai minore errori nelle attività svolte
automaticamente e al maggiore tempo disponibile per le attività non automatiche;
si semplifica la pianificazione e si possono prendere decisioni più oculate, potendo
monitorare più efficientemente e profondamente l’andamento dei processi del
workflow;
si valorizzano le risorse umane, giacché gli aspetti più ripetitivi e monotoni
dell’attività del processo vengono svolte automaticamente. 5
Armato Desirèe & Cigliano Fabio