Un modello di Workflow Decentralizzato e sua implementazione relativa ad una problematica di Governo Elettronico Pietro Mazzoleni Università Statale di Milano Cimic - Rutgers University (USA) Sommario Introduzione al Problema Workflow Centralizzato Vs. Decentralizzato Contributi 1. Estensione dei WFMS Tradizionali 2. DWFMS Self Describing Workflow Workflow Stub 3. Politica della muraglia Cinese per il DWFMS 4. Governo Elettronico Workflow Personalizzato Moduli PDF Interattivi e FDF Visualizzazione e Monitoring del Workflow Esecuzione decentralizzata Conclusioni Pubblicazioni Introduzione al Problema Cosa è un Workflow? L’automazione, parziale o totale, di processi aziendali durante i quali informazioni o attività passano da un soggetto (task) ad un altro al fine di realizzare particolari azioni, tutto nel rispetto di un insieme di regole (dipendenze) che ne gestiscono i flussi. WFMC Es: prenotazione di una vacanza: DELTA Inserisci Input bf or p>$400 Riserva Volo AVIS bs Noleggia Auto bs bs Riserva Volo bs and p<=$400 CONTINENTAL Noleggia Auto HERTZ bs Riserva Albergo bs and Date <3/21/01 MARRIOT Task: un’ e-mail, una transizione, un programma, un meeting, ecc Agenti: Una persona, un DBMS, un’applicazione, ecc Dipendenze: di flusso, di valore ed esterne Notifica all’utente WFMS Centralizzato DELTA Inserisci Input bs Riserva volo bf or p>$400 Riserva Volo CONTINENTAL bs and p<=$400 AVIS bs Noleggia Auto bs Noleggia Auto HERTZ bs Riserva albergo DELTA Bs and Date <3/21/01 Notifica all’utente MARRIOT Sistema Centralizzato CONTINENTAL Specifica del WF AVIS Esecuzione del Workflow MARRIOT Collo di Bottiglia Non adatto a sistemi che sono autonomi, distribuiti e eterogenei per natura Workflow Decentralizzato 1 DELTA 3 Inserisci Input bs Riserva Volo 2 4 CONTINENTAL AVIS Noleggia Auto bs 6 HERTZ Riserva albergo bs and Date <3/21/01 7 Sistema Centralizzato CONTINENTAL 3 6 5 6 Notify AVIS 7 5 6 7 MARIOTTE 5 2 3 Notifica all’utente MARRIOT DELTA 4 Specifica del WF Noleggia Auto bs Bs and p<=$400 enter input bs Riserva volo bf or p>$400 5 7 6 7 Contributo: Estensione dei WFMS Tradizionali Relazioni di Join Un punto del Workflow dove l’esecuzione parallela di due o più attività converge in un unico nodo. WFMC Riserva Alitalia Prenota il Volo Riserva Delta Rappresentazione Esplicita Costruttori espliciti nel Workflow per rappresentare i casi di AND-JOIN e OR-JOIN Relazioni di Join - Problema Problema: Un utente richiede di prenotare 3 camere doppie e 4 camere singole nei due alberghi disponibili in città. (Hilton.doppie>= 3 OR Country.doppie>=3) AND (Hilton.singole>= 4 OR Country.singole>=4) Hotel Hilton ??? Hotel Country Riserv aViaggi o Relazioni di Join - Soluzione Soluzione: Rappresentazione Implicita Hotel Hilton Hotel Country Bs Bs Riserv a Viaggio (Hilton.doppie>= 3 OR Country.doppie>=3) AND (Hilton.singole>= 4 OR Country.singole>=4) Estende il numero di casi di join rappresentabili nel Workflow E’ consistente con gli altri tipi di percorsi (sequenza,split) Evita l’utilizzo di speciali strumenti poco pratici in caso di esecuzione decentralizzata del Wf Contributo: Sistema di Workflow Decentralizzato Sistema di Workflow Decentralizzato - DWFMS Self-describing Workflow Workflow Stub WFMS server t1 bs Self Describing Workflow t4 t3 bs t2 t1 t4 bs t2 WFMS Stub t1, A1, Input (t1) bs bs t3 WFMS Stub bs WFMS Stub A(t1) A(t2) WFMS Stub (t2, A2, Input (t2), A(t4) t2 (t4, A4, Input (t4), (t3, A3, Input (t3), t3 bs t4 WFMS Stub A(t3) t4 Self Describing Workflow Partizione del workflow che contiene sufficienti informazioni tali da poter essere gestita da un agente locale invece di utilizzare il sistema Centralizzato Nome del Task Agente responsabile dell’esecuzione del task Condizioni Iniziali Outstate Partizioni del Workflow SELF(ti) = <ti, A(ti), PRE(ti), OutState, Pi > WFMS Stub Attività Ricevere il self describing workflow, Estrarre il task da eseguire Creare delle partizioni del workflow Valutare le condizioni iniziali Eseguire il task Valutare le dipendenze con i task successivi Costruire i self describing workflow Inviare self all’agente responsabile dell’esecuzione del task successivo Obbiettivi Eseguire le attivita’ in parallelo dove possibile Minimizzare le informazioni inviate ai task Contributo: Politica della Muraglia Cinese per il DWFMS Problema del Conflitto di Interessi Problema: Gli agenti possono creare un conflitto di interessi Un agente può alterare il flusso del workflow a proprio vantaggio AVIS DELTA Inserisci Input bf or p>$400 Riserva Volo bs Noleggia Auto bs Riserva Volo Bs and p<=$400 CONTINENTAL bs Noleggia Auto HERTZ bs Riserva Albergo Bs and Date <3/21/01 Notifica all’utente MARRIOT Continental può offrire un prezzo tale da escludere Delta dall’esecuzione del workflow 16 Regole di lettura e scrittura Regola di Lettura/Valutazione: S può leggere un oggetto O O non è sensibile per S, OPPURE Non c’é un soggetto S’ in W tale che COI(S)=COI(S’) Un soggetto S può leggere e valutare un oggetto O se non e’ sensibile per S oppure se nel Workflow non esiste un altro soggetto S’ in conflitto di interessi con S Regola di Scrittura/Partizione: S può scrivere un oggetto O se e’ in grado di leggerlo Un soggetto S non è abilitato a costruire dei Self con oggetti sensibili che sono in Conflitto di interessi nel workflow 17 Contributo: Governo Elettronico per i servizi d’impresa Come aprire una nuova impresa nello stato del New-Jersey? 18 Generazione di un Workflow personalizzato Procedura che determina automaticamente le agenzie governative da contattare ed i moduli necessari ad aprire una particolare impresa. Vantaggi: Guida l’utente tra le agenzie ed i vari servizi già esistenti su Internet Individua il corretto ordine tra le attività Trasparente per l’utente Crea una struttura semplice da capire 19 Rappresentazione del Workflow CARTELLA DELL’UTENTE 20 FIGURA INTERATTIVA Compilazione Moduli e Servizi sul Web Pre-compilazione di moduli PdF e di pagine web con le informazioni provenienti dal profilo dell’utente e dai task già completati. Creazione di un form interattivo Vantaggi: Aiuta l’utente nella compilazione dei moduli PdF e dei servizi presenti sul Web Permette di estrarre automaticamente le informazioni contenute nei moduli 21 Risparmia tempo all’utente Controllo automatico degli errori Modulo PdF Interattivo FORM PDF INTERACTIVE FORM • Semplice da Utilizzare • Controllo in tempo reale degli errori • Non è necessaria la stampa del modulo 22 Profilo Utente Pre-compilazione del modulo Pietro AutobodyShop My autobodyShop Italy 12/12/2001 Pietro Mazzoleni Via Como, 50 Brivio (LC) 23 Imprenditore 180 University Avenue 23883 Newark NJ 07102 PDF INTERAMENTE PDF PDF PRE-COMPILATO INTERATTIVO COMPILATO Esecuzione del Workflow Creazione di un prototipo che esegua automaticamente l’intero processo con la possibilità di personalizzare il livello di collaborazione proveniente da ciascuna agenzia. Vantaggi: Integra differenti sistemi, mantenendo i livelli di autonomia ed automazione di ciascuna agenzia governativa Sviluppa soluzioni personalizzate per adattarsi a diverse esigenze 24 Controllo dell’intero processo Implementazione del sistema di Workflow proposto Sviluppi Futuri - Conclusioni Modifiche dinamiche nel Workflow Gestione delle eccezioni Completare il prototipo per fornire alle agenzie governative del New Jersey strumenti utili da utilizzare nei propri sistemi. 25 Pubblicazioni: V. Atluri, S. Chun, P. Mazzoleni A Chinese Wall Security Model for Decentralized Workflow Systems Proc. of 8th ACM Conference on Computer and Communications Security (CCS-8), Novembre 2001 Philadelphia, USA Acceptance ratio: 27/153 N. Adam, F. Artigas, V. Atluri, S. Chun, S. Colbert, M. Degeratu, A. Ebeid, V. Hatzivassiloglou, R. Holowczak, O. Marcopolus, P. Mazzoleni, W. Rayner and Y. Yesha, E-Government: Human Centered Systems for Business Services Proc. of 1st National Conference on Digital Government Maggio 2001 Los Angeles, USA. V. Atluri, S. Chun, P. Mazzoleni Conflict of Interest Issues in Decentralized Workflow System: A Chinese Wall Security Model In corso di stesura. Sarà sottomesso per pubblicazione alla rivista ACM Transactions on Information Systems Security. S. Chun, V. Atluri, P. Mazzoleni, N. Adam Customization of E-Service Workflows. In corso di stesura. Prototipo: 26 http://cimic.rutgers.edu/dgov/demos1.html