• Non ci sono risultati.

Capitolo 2: I sistemi di gestione del workflow

2.2 Caratteristiche comuni

Per capire meglio in cosa consiste un sistema di gestione del workflow e rendere un’idea dell’eterogeneità delle funzioni che realizza, e che fanno sì che questo tipo di applicazioni siano sempre più diffuse all’interno delle aziende, riportiamo una lista delle caratteristiche tipiche associate alla stragrande maggioranza dei prodotti di workflow presenti sul mercato:

Strumento di definizione dei processi: tutti i sistemi di gestione del workflow includono

uno strumento testuale o molto più spesso grafico per la modellazione sia degli interi processi che delle singole attività. Ognuna di queste è associata ad un attore (una persona o un’applicazione) e vengono usati i ruoli per determinare quali controlli devono essere svolti per permettere la sua esecuzione. Inoltre, per ognuna di esse viene creata un’interfaccia, grafica se richiede l’intervento umano o verso un’altra applicazione se richiede l’utilizzo di software esterno. I sistemi usano tali strumenti per generare automaticamente codice in un linguaggio di modellazione interpretabile dal motore di workflow. Alcuni sistemi permettono di effettuare modifiche ai processi in modo dinamico da parte di utenti selezionati con permessi di amministratore.

Scambio di informazioni tra gli utenti: i sistemi di workflow supportano la distribuzione

delle informazioni relative al processo tra i vari attori (persone o sistemi) coinvolti tramite la posta elettronica (molto diffusa nei workflow amministrativi o in generale per le notifiche alle singole persone) o per mezzo di una base di dati condivisa, utile per archiviare dati e documenti utilizzati da tutti i processi e dai loro partecipanti. Molti sistemi di workflow implementano entrambe le funzionalità.

Simulazione e generazione di prototipi: alcuni sistemi di workflow permettono di simulare

l’esecuzione dei processi o di creare prototipi e/o versioni pilota di un certo workflow per provarlo e testarlo all’interno di un ambiente ristretto prima di introdurlo in ambito produttivo.

Decisioni basate su regole: ad ogni passo del processo il sistema può associare delle regole,

per determinare come le informazioni devono essere trattate, scambiate e controllate. Ad esempio, una regola potrebbe generare delle notifiche via e-mail al verificarsi di una certa condizione, oppure determinare a chi inviare dei documenti o assegnare delle attività a seconda del contenuto dei loro attributi.

Distribuzione dei documenti: nei sistemi più semplici, è realizzata passando un certo file

quelli più sofisticati, i documenti sono contenuti all’interno di un archivio comune e controllati sia in ingresso che in uscita da esso, e spesso gestiti in modo tale da permettere ad ogni persona coinvolta in un processo di aggiungere i propri commenti ad un certo documento senza modificare quello originale, salvando quindi entrambe le versioni. Alcuni strumenti di workflow hanno addirittura integrato al proprio interno un vero e proprio sistema di gestione documentale.

Invocazione di applicazioni esterne: per creare, aggiornare o semplicemente visualizzare

dati e documenti, il sistema di workflow può invocare altre applicazioni, come ad esempio strumenti di elaborazione dati, fogli di calcolo, calendari, agende elettroniche, sistemi informativi o di gestione documentale e qualunque altro tipo di applicazione (anche proprietaria) utilizzata in ambito produttivo. Spesso però tale integrazione non è fornita dal sistema di gestione del workflow (o è presente solo per i programmi più diffusi), ma deve essere realizzata o deve essere già presente in azienda un’interfaccia verso le altre applicazioni.

Worklist: permettono ad ogni utente di identificare velocemente i loro compiti correnti,

insieme ad altre informazioni come la loro priorità, la data entro cui devono essere eseguiti, e così via. Alcuni sistemi analizzano inoltre periodicamente in che stato si trova il processo di workflow e quanto tempo può durare ogni passo, e quindi stimano quando le varie attività compariranno nelle worklist dei diversi utenti e informano questi ultimi di tale previsione, permettendo loro di ottenere una migliore organizzazione del lavoro.

Automazione delle attività: come già detto, i sistemi di workflow possono

automaticamente invocare e spesso anche eseguire (autonomamente o in collaborazione con altre applicazioni) le attività che non richiedono componenti umane, come scrivere una lettera o effettuare una notifica via e-mail. Spesso l’automazione delle attività richiede la realizzazione di operazioni di personalizzazione del prodotto di workflow.

Rendezvous: la maggior parte dei sistemi di workflow supportano il controllo ed il

riconoscimento automatico delle informazioni in ingresso al sistema necessarie per un processo sospeso in attesa di quei dati o documenti. Nel caso in cui questi non giungano in tempo, gestiscono anche il proseguimento automatico dell’esecuzione del processo se tali informazioni non sono critiche, o notificano una situazione di errore se lo sono. Tale funzionalità è spesso chiamata rendezvous, o più raramente marriage.

Notifica di eventi: tutti i sistemi avvisano gli amministratori o l’intero staff di un processo

del verificarsi di certi eventi: il raggiungimento di un certo milestone, l’aumento del carico di lavoro, il ritardo nell’esecuzione di una certa attività, e così via.

Monitoraggio del processo: il sistema può fornire a tempo di esecuzione importanti

informazioni: per esempio, sul carico di lavoro corrente e su quello previsto, su attuali o potenziali colli di bottiglia, sul tempo di risposta o su scadenze vicine o non rispettate. Tali informazioni sono fornite attraverso apposite interfacce utente, che possono presentare viste diverse delle informazioni sull’esecuzione dei processi e che sono usate dagli amministratori per accedere le statistiche di workflow.

Accesso ad informazioni attraverso Internet: alcuni sistemi, soprattutto quelli più recenti,

includono dei moduli di interfaccia via web, in modo da fornire le informazioni di workflow (e spesso anche permettere di eseguirne le operazioni) a clienti, fornitori o collaboratori remoti o ad impiegati in trasferta.

Tracking delle attività: tutti i sistemi di workflow tengono traccia nei loro file di log o

sulle loro basi di dati di tutta una serie di informazioni riguardo alle varie attività svolte, come ad esempio quando sono iniziate e terminate, se sono state sospese e per quale motivo, le persone che le hanno eseguite, i valori dei vari attributi e variabili ad esse associate, e così via. Questi dati sono poi utilizzati per analizzare il processo a posteriori o per fornire una prova della realizzazione di una certa attività.

Amministrazione e sicurezza: di solito vengono fornite dai diversi sistemi varie

funzionalità per identificare i partecipanti e gestire le loro rispettive autorizzazioni, e per svolgere i compiti amministrativi associati ad ogni processo di workflow (associazione di utenti ai ruoli adeguati, archiviazione di file, gestione del logging delle varie attività, ecc.).