Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli

sistemi informativi WORKFLOW, Schemi e mappe concettuali di Sistemi Informativi

riassunti che vanno dall'introduzione dei sistemi informativi agli UML

Tipologia: Schemi e mappe concettuali

2020/2021

Caricato il 14/03/2022

.1257
.1257 🇮🇹

5 documenti

Anteprima parziale del testo

Scarica sistemi informativi WORKFLOW e più Schemi e mappe concettuali in PDF di Sistemi Informativi solo su Docsity! Sistemi Informativi Appunti Capitolo 5: I Workflow e WfMS 1. Che cosa si intende per workflow? Il concetto di workflow Un workflow è una sequenza di operazioni interconnesse tra loro, dichiarate come compiti assegnati a persone singole oppure a gruppi di persone all'intemo di una stessa organizzazione, finalizzate all'esecuzione di un certo processo. Un workflow è quindi l'automazione (totale o parziale) di un processo di business nel quale i documenti, le informazioni o i compiti sono passati da un partecipante ad un altro per svolgere attività, secondo un insieme di regole procedurali Molte singole istanze di processo possono essere operative durante l'enactment (messa in atto) di un processo (0 “caso” 0 “workflow case”). Utilizzare la tecnologia dei workflow significa quindi automatizzare i processi che coinvolgono una combinazione di attività umane ed automatiche, in particolare con il coinvolgimento di applicazioni e strumenti IT. Come definire un processo Dal concetto di workflow, risulta chiaro che la tecnologia del workflow richiede la definizione rigorosa dei processi di business. Vediamo allora come si può definire un processo. Per farlo, occorre individuare: 1. Larete di attività che lo costituiscono. 2. Quali sono i criteri per iniziare e per terminare il processo stesso. 3. Quali sono le informazioni sulle singole attività. 4. Chi sono i partecipanti al processo, dove il termine partecipante si può riferire sia ad una risorsa umana (cioè una persona fisica o un gruppo di persone), sia ad un'applicazione software. Quali sono i documenti e i dati legati alle attività del processo. In genere però non vengono rappresentati nello schema dei flussi di dati. Una volta individuati tutti questi elementi, bisogna definire il processo anche in una maniera formale, rappresentandolo in una forma che ne consenta la manipolazione automatica, per la modellazione e per la sua messa in atto. I costrutti di base che si utilizzano per la definizione della rete di attività sono: a) La sequenza (cioè due attività vengono eseguite l'una dopo l’altra). b) Il parallelo (due attività in parallelo sono 2 attività che vengono eseguite contemporaneamente). c) L'alternativa (due attività sono in alternativa se ne viene eseguita solo una, sulla base di opportune condizioni, che possono essere di vario tipo). Possiamo quindi dire che il processo di business è “ciò che si vuole che accada”, mentre la definizione del processo di business è la rappresentazione di ciò che si vuole che accada. All'interno di questa rappresentazione, potremo avere le definizioni di sottoprocessi. Inoltre, ogni processo è costituito da un insieme di attività, che possono essere manuali (e quindi non gestite da alcun sistema automatizzato) oppure automatizzate. Istanza di processo (o casi, o workflow case) In maniera informale, un'istanza di processo è una rappresentazione di ciò che sta realmente accadendo, e rispetta quanto è stato dettato dalle definizione del processo al quale corrisponde. Ogni volta che viene avviata l'esecuzione di un processo, si avvia quindi una nuova istanza di quel processo. In generale, è possibile che siano attive allo stesso tempo diverse istanze di processo, operanti su dati e/o caratterizzate da partecipanti diversi. Un'istanza di processo comprende una o più istanze di attività, ciascuna delle quali può comprendere uno o più: a) Elementi di lavoro (work items) Un elemento di lavoro è un task allocato ad uno specifico partecipante. b) Applicazioni invocate Le applicazioni invocate sono gli strumenti e le applicazioni informatiche di supporto. pag.i7 Sistemi Informativi Appunti 2. Stati di processi e attività Gli stati di un'istanza di processo In maniera molto simile a quanto accade per i processi informatici, i processi di business possono trovarsi in diversi stati. Il seguente diagramma mette in evidenza le transizioni da uno stato all’altro. Inizialmente, il processo si trova in stato “initiated”, cioè è pronto ad essere eseguito, ma la sua esecuzione non è ancora stata avviato. Dopo l'operazione di start, si passa allo stato “running”: il processo è quindi in esecuzione. Quando poi si hanno in esecuzione una o più istanze di attività, il processo passa allo stato “active”. Dallo stato active, si può tomare allo stato running, quando termina l'attività in esecuzione (0 terminano le attività in esecuzione) e ancora non è stata avviata la successiva. Il processo può poi essere terminato (tipicamente per un errore), e in tal caso si passa dallo stato active o running allo stasto terminated. Quando invece si è tornati allo stato running perché è terminata l'ultima attività del processo, allora si passerà allo stato “complete”(il processo cioè è terminato con successo). Dallo stato running è anche possibile passare allo stato “suspended”: il processo viene cioè sospeso per un certo intervallo di tempo, al termine del quale vine riavviato da capo (tramite restart), oppure si ritorna allo stato running. Infine, dallo stato running si può tornare allo stato initiated se si riavvia dall'inizio il processo in esecuzione. Transizioni di stato di un'attività Il seguente diagramma inoltre rappresenta in maniera intuitiva quali sono le transizioni di stato che si possono avere per una singola attività di un processo: Suspend fResume Start — % (iacive 2 (Aci) (Complete) L'attività è in stato “active” se ha almeno una istanza di lavore, ovvero qualcuno la sta realmente eseguendo. pag. 38 Sistemi Informativi Appunti 5. Modello di riferimento per la struttura di un WfMS Introduzione Vogliamo ora introdurre il scorkflcw reference model, ovvero il modello di riferimento per l'architettura dei sistemi di workflow. Tale modello è rappresentato nella figura seguente: tntersce } raRioW APT i Inirchange male] lnterfsce A #ori:flove Enaci Obe Wake Workflow: Enaetment Service E e inets) | taterface 2 } $ Imertice Wario Toeched Applications Come mostrato dalla figura, il WWÉMIS possiede al suo interno un certo numero di componenti che interagiscono tra loro in maniera predefinita. Al fine di consentire l'interoperabilità tra tali componenti, sono state definite delle interfacce standardizzate per lo scambio di dati tra i componenti stessi. Workflow Enactment Service (WES) . Cos'è un WES? Il Workflow Enaciment Service è quella parte del WEVIS che fornisce l'ambiente per l'esecuzione delle singole istanze dei processi. Possiamo quindi dire che il WES è un servizio software finalizzato alla creazione, gestione ed esecuzione di istanze di processo. Un WES è costituito da uno o più workflow engine. Workflow engine Un workflow engine è un'applicazione software che si occupa di interpretare, gestire ed eseguire una parte di un processo di business (o, al limite, l'intero processo di business). In particolare, l'engine determina quali sono le attività da mandare in esecuzione. Per fare ciò, esso deve interpretare gli eventi che si verificano (ad esempio, l'invio di documenti ad un server), e compiere delle azioni di risposta a tali eventi, in accordo ai processi definiti. Le azioni possono essere di ogni tipo (ad esempio, il salvataggio del documento în un apposito sistema, l'assegnazione di nuove attività mediante l'invio di e-mail agli utenti, ...). Tipicamente, un workflow engine fornisce i servizi per: 1. Interpretare la definizione del processo; 2. Controllare le istanze di processo (ovvero gestire la creazione, l'attivazione, la sospensione, la terminazione, ... cioè i vari passaggi da uno stato ad un altro). 3. Navigare tra la varie attività di processo, che potrebbero coinvolgere operazioni da svolgersi in maniera sequenziale o in parallelo. 4. Consentire l'ingresso e l'uscita di specifici partecipanti. 3. Identificare le attività da sottoporre all'attenzione degli utenti e mettere a disposizione un'interfaccia per supportare l'interazione con gli utenti. 6. Mantenere i dati di controllo e i dati salienti relativi al workflow, mediante lo scambio di tali dati con applicazioni o utenti. 7. Mettere a disposizione un'interfaccia per invocare applicazioni esterne e collegare tutti i dati rilevanti sul workflow. 8. Eseguire azioni di supervisione, per fini di controllo, amministrazione e verifica. pag.dl Sistemi Informativi . Appunti Osservazione Nonostante il workflow enactment service sia stato descritto come un'entità logica singola, in realtà esso può essere un sistema centralizzato, oppure un sistema distribuito. In questo secondo caso, diversi workflow engine controlleranno ciascuno una diversa parte della messa in atto del processo e interagiranno con quel sottoinsieme di utenti e applicazioni che sono legati alle attività di quella “fetta di processo” di cui sono responsabili. I sistemi di workflow distribuiti fanno uso di specifici protocolli e formati di scambio dati tra i workflow engine, al fine di sincronizzare le operazioni e scambiare informazioni di controllo del processo e delle attività. Altri componenti Gli altri componenti del WfMS sono: . L'interfaccia WAPI Le applicazioni possono interagire con i servizi offerti dal Workflow Enactment Service per mezzo di un'interfaccia detta Workflow API (0 WAPI). Essa mette quindi a disposizione un modo per invocare i servizi del WES. Process definition tools Contiene: 1. Il process model designer, che è uno strumento software per la definizione dei modelli dei processi. 2. Il process model repository, che è l'archivio dei modelli dei processi registrati nel WfMS. Administration & monitoring tools Si tratta di un'applicazione usata per amministrare il WfMS e per monitorare il funzionamento. Alcune sue tipiche aree funzionali sono la gestione degli utenti a dei ruoli, il controllo delle risorse, la supervisione dei processi, la gestione di operazioni di verifica, ... Workflow Enacument Service A Workflon Engines) Workflow client application (worklist handler) Come abbiamo detto, il workflow engine determina quali sono le attività da mandare in esecuzione e individua quali sono i partecipanti al workflow a doverle svolgere (si occupa di allocare le attività). Esso genera così delle worklist (una worklist è l'elenco di work items, ovvero di compiti, assegnati ad un certo partecipante al workflow). I vari partecipanti (ovvero utenti singoli o gruppi di utenti) devono perciò poter interagire con il workflow engine, al fine di poter ricevere la propria worllist e di mandare all’engine eventuali messaggi di notifica (ad esempio, per segnalare il completamento delle attività ad essi assegnate). L'applicazione che si occupa di svolgere tali operazioni prende il nome di woerklist Randler 0 workflow client application. Il workflow handler è perciò il sistema software responsabile dell'organizzazione del lavoro per conto di un utente. È il worklist handler ad avere la responsabilità di selezionare e far procedere le singole attività dalla worklist La client application interface L'interazione tra il workflow engine e il worklist handler avvien mediante un'opportuna interfaccia, detta client application interface. La invoked application interface È l'interfaccia che permette al workflow engine di attivare direttamente una specifica applicazione per intraprendere una particolare attività (tipicamente si tratta di un'applicazione server, priva di interfaccia con l'utente). pag.d2 Sistemi Informativi Appunti Diverse implementazioni del worklist handler Nel modello a workflow, l'interazione tra il worklist handler ed un particolare workflow engine avviene mediante un'interfaccia ben definita. Nel caso più semplice, la worklist è accessibile al workflow engine affinché quest'ultimo possa assegnare delle attività ai vari utenti, ed è accessibile al worlist handler allo scopo di presentare agli utenti le attività ad essi assegnate, in modo che possano poi eseguirle. Questa interazione può però essere implementata in maniera diversa, a seconda di vari fattori, tra i quali anche il tipo di infrastruttura usata per supportare la distribuzione delle worldist La figura seguente mostra 4 possibili scenari: Workflow Engine Server environment > ui 400 | RPC cul lWorklisr] ele ce La Clignt 1 da E È ‘orklis Worklis ‘arklis Worklisi ess. Ae ca Common API Workflow Worklow Workllew Workflow (Client Appaf || Cliem Appn.] - [Client Appr Client Appa Shared Filestore - Flectronic Mail ode Model 1. Host based model In questo modello, la comunicazione tra il client worklist handler e il workilow engine avviene mediante un'interfaccia che si trova su un terminale o su una workstation remota. L'utente deve quindi inviare a tale interfaccia la richiesta di accesso ai dati. L'interfaccia accede poi alla worklist mediante una chiamata locale. 2. Shared filestore model Il modello shared filestore model prevede che si abbia un archivio condiviso, che si trova sul confine ira la piattaforma client e la piattaforma server ed è accessibile ad entrambe. Il worklist handler è quindi implementato come una funzione client che comunica con tale archivio di dati. 3. Electronic Mail Model La comunicazione avviene per mezzo della posta elettronica, che supporta la distribuzione dei work items (ovvero dei compiti) a singoli partecipante del processo. 4. Procedure call or message passing model La comunicazione avviene mediante un meccanismo di scambio di messaggi (ad esempio, RPC: Remote Procedure Call). In questo scenario, la worklist potrebbe essere fisicamente allocata nel workflow engine o nel worklist handler, a seconda delle specifiche caratteristiche di implementazione. pag di
Docsity logo


Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved