Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow Management System Un sistema che definisce, progetta ed esegue interamente dei workflows, mediante luso di un software che permette unesecuzione guidata della logica del workflow Process Definition La rappresentazione di un processo di lavoro in una forma che supporti la manipolazione automatica di un sistema di gestione di workflow. Esso consiste in una rete di attività e relazioni, criteri per indicare linizio e la fine dei processi, e informazioni sulle attività individuali come gli attori le applicazioni di IT o i dati, etc… Workflow Engine Un servizio sw o motore che fornisce un ambiente di esecuzione run-time alle istanze di workflow Workflow Enactment Service Un servizio sw che può consistere in uno o più motori di workflow che si occupano di creare, gestire ed eseguire istanze di workflow. Le applicazioni devono interfacciarsi con tale tipo di servizio tramite le interfacce di applicazioni dei workflow (WAPI) Definizioni dal Reference Model
Caico Roberto,Termine Franceso Componenti ed interfacce
Caico Roberto,Termine Franceso Possono esistere molti tool per modellare, descrivere e documentare un processo di business e tali tools possono andare dal meno sofisticato (matita e carta) ad altri molto sofisticati. Il Reference Model nulla dice sulla tipologia e complessità di tali tools, inoltre essi potrebbero essere integrati con altri tool specifici come ad esempio un BPR (Business Process Re-Engineering). Quello che viene chiesto a tali tools e che alla fine siano in grado di interfacciarsi con gli altri programmi definiti nelle altre interfacce. Quindi il prodotto finale deve modellare e sviluppare attività come definizioni di processo che possono essere passate ad un engine. Tali tools devono essere in grado di avere una struttura organizzativa che possa includere sia oggetti che ruoli anche complessi (tipo relazioni tra attori, package, …) Process Definition Tools
Caico Roberto,Termine Franceso Linterfaccia tra il tool di modellazione e definizione, e il sw di engine è altresì chiamata interfaccia import/export; la sua natura è un formato di interscambio e di chiamate ad API al fine di scambiare informazioni complete sulle definizioni del processo attraverso una varietà di mezzi fisici o elettronici. Essa dovrebbe poter supportare lo scambio di un processo di sviluppo completo come anche lo scambio di subset di processi di sviluppo. Benefici nellutilizzare delle standardizzazioni: –si definisce un punto di separazione tra il build-time e il run-time e lutilizzo di un ambiente assestante per il process definition permette allutente di scegliere tra i vari tool disponibili quello ad egli più affine. –offre la possibilità di esportare tali definizioni del processo in diversi formati per poter essere implementati su engine differenti Workflow Definition Interchange Interface 1
Caico Roberto,Termine Franceso Basic Meta-Model
Caico Roberto,Termine Franceso Workflow Process Definition E unentità che si relaziona con la amministrazione e che contiene le informazioni di creazione (autore,data,…) Workflow Process Activity Ogni Proc. Def. è formato da una o più attività; unattività rappresenta il lavoro che può essere svolto da una combinazione di risorse; Ad ogni attività possono opzionalmente essere associate delle informazioni di start ed end, una priorità, etc…; Unattività potrebbe essere un blocco di attività che ne esegue un intero set; Una dummy-activity è una attività scheletrica che non ha processi di lavoro ma che può venire inserita per supportare linstradamento delle decisioni riguardo transizioni di ingresso e/o di uscita Transition Information Un attività è relazionata ad unaltra con condizioni di controllo di flusso;ogni transizione ha 3 proprietà elementari: lattività di partenza, quella di arrivo e la condizione per la transizione. Ci sono alcune transizioni che potrebbero essere incondizionate. Alcune transizioni più complicate che non possono essere espresse con la normale transizione sono formate usando dummy-activity Workflow Partecipant Declaration Questo provvede alla descrizione di risorse che possono agire come realizzatori di varie attività. Particolari risorse sono definite come attributi di una particolare attività, e si occupano di legare la stessa ad un insieme di risorse. Esso non dovrebbe riferirsi ad una singola persona ma dovrebbe identificare un set di persone con un apposito livello di responsabilità Entities Overview
Caico Roberto,Termine Franceso Resource Repository Esso tiene conto del fatto che gli attori possono essere umani o programmi o macchine. In alcuni scenari più complicati gli attori potrebbero essere un repository di risorse come ad esempio il modello di organizzazione nel caso di attori umani. Workflow Application Declaration Permette la descrizione di applicazioni o interfacce esterne che un servizio workflow può chiamare Workflow Relevant Data Definisce i dati che sono creati e usati nellesecuzione di un processo. Tale dato è messo a disposizione alle attività o alle applicazioni in esecuzione che ne facessero richiesta e dovrebbe essere usato per trasferire informazioni persistenti System and Environmental data Sono dati che servono alla gestione del processo di workflow ma ai quali possono accedere attività varie Data types and Expression Il meta modello assume uno standard set di tipi di dati (string, reference, integer, …). Tali tipi dovrebbero essere estesi usando uno schema XML o un riferimento ai dati definiti in un a sorgente esterna Entities Overview
Caico Roberto,Termine Franceso Entities Overview
Caico Roberto,Termine Franceso Possono essere usati in tutte le entità, in funzioni e procedure di una libreria e in dichiarazioni esterne. Extended Attributes
Caico Roberto,Termine Franceso La struttura complessiva dellinterfaccia 1 e le sue connessioni con i servizi ad essa associati è quella mostrata nella figura sottostante: About Interface 1
Caico Roberto,Termine Franceso Il meta modello identifica un set di entità e attributi di base per lo scambio di process definition; tra questi i fondamentali sono: Workflow Process Activity Transition Information Workflow Partecipant Specification Workflow Application Declaration Workflow Relevant Data La Coalizione WfMC ha definito una sua grammatica WPDL ed ha deciso di usare come linguaggio standard lXML avviandosi così a standardizzare il linguaggio XPDL XML Process Definition Language Meta-Model
Caico Roberto,Termine Franceso Meta-Model
Caico Roberto,Termine Franceso Il package è un contenitore di entità che sono comuni a più processi Si introduce il problema dello scope delle entità –Global scope Workflow Participant Specification Workflow Application Declaration Workflow Relevant Data E possibile inoltre fare riferimento a entità allinterno di diversi package precedentemente definiti come: –Process ids per individuare i subflow –Workflow Partecipant Specification –Workflow Application Decleration Visibilità La priorità è delle entità locali successivamente quelle globali o esterne Meta-Model – Process and Package
Caico Roberto,Termine Franceso 3 tipi di attività definite: Generic Activity Route Activity Una dummy Activity che permette la definizione di transizioni in cascata(e.g. if annidati : IF cond_1 THEN act_1 ELSE IF cond_2 THEN act_2 ELSE act_3 LOOP Activity Una serie di transizioni connesse tra di loro (e.g. WHILE – REPEAT - UNTIL) Meta-Model – W. P. Activity
Caico Roberto,Termine Franceso Descrivono le condizioni per passare da unattività ad unaltra; si distinguono: Regular Transition. di tipo FROM … TO … COND Loop Connecting Transition Per esprimere cicli di condizione di transizione Meta-Model – Transition Information
Caico Roberto,Termine Franceso I tipi di entità che possono essere Partecipant sono: RESOURCE_SET Un set di risorse. RESOURCE Un agente di risorse. ROLE Permette lindirizzamento verso un determinato tipo di funzione, di essere umano o di organizzazione. Ad esempio può essere definita unintera organizzazione aziendale ORGANIZATIONAL_UNIT Un reparto o alcune unità di una organizzazione HUMAN Un essere umano che interagisce col sistema. SYSTEM Un agente automatico. Meta-Model – Workflow Participant
Caico Roberto,Termine Franceso E una lista di tutte le applicazioni o tools richiesti o invocati. Questo permette un approccio al problema di tipo multi-piattaforma dove differenti programmi possono girare su piattaforme diverse Meta-Model – Application Declaration
Caico Roberto,Termine Franceso La struttura dei dati è del tipo: Data Type tipo di dato della variabile di processo Description Short Descrizione testuale del dato Extended Attributes Estensioni opzionali Id Identificativo del dato. Initial Value Valore iniziale del dato per il run-time. Is Array Indica se è un array Length Lunghezza del dato Name Testo usato per identificare il dato Meta-Model – Relevant Data
Caico Roberto,Termine Franceso Il tipo di dato (campo Data – type) può essere: Array Type A dati di dimensione fissata (deprecated). Basic Type Tipi semplici: STRING, INTEGER, FLOAT, DATETIME, REFERENCE, BOOLEAN, or PERFORMER. Declared Type Un riferimento a un tipo di dato dichiarato in una typeDeclaration di un elemento. Enumeration Type Un set di valori ammissibili per un parametro di una variabile (deprecated). External Reference Un riferimento ad un tipo di dato di unentità esterna List Type Un insieme illimitato di dati dello stesso tipo (deprecated). Record Type Un insieme di membri di tipo differente (deprecated). SchemaType Un tipo definito usando uno schema XML. Union Type Un insieme di membri dei quali solo uno può essere usato per unistanza del dato (deprecated) Meta-Model – Relevant Data – Data Type