Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un...

19
Caico Roberto,Termine Fra nceso Workflow La semplificazione dell’uso del computer o l’automazione di un processo di lavoro in tutte le sue parti Workflow Management System Un sistema che definisce, progetta ed esegue interamente dei workflows, mediante l’uso di un software che permette un’esecuzione 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 l’inizio 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

Transcript of Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un...

Page 1: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

• Workflow La semplificazione dell’uso del computer o l’automazione di un processo di lavoro in tutte le sue parti

• Workflow Management System Un sistema che definisce, progetta ed esegue interamente dei workflows, mediante l’uso di un software che permette un’esecuzione 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 l’inizio 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

Page 2: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

Componenti ed interfacce

Page 3: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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

Page 4: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

• L’interfaccia 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 nell’utilizzare delle standardizzazioni:– si definisce un punto di separazione tra il build-time e il run-time e

l’utilizzo di un ambiente assestante per il process definition permette all’utente 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

Page 5: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

Basic Meta-Model

Page 6: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

• Workflow Process Definition E’ un’entità 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à; un’attività 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…; Un’attività 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 l’instradamento delle decisioni riguardo transizioni di ingresso e/o di uscita

• Transition Information Un attività è relazionata ad un’altra con condizioni di controllo di flusso;ogni transizione ha 3 proprietà elementari: l’attività 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

Page 7: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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 nell’esecuzione 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

Page 8: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

Entities Overview

Page 9: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

• Possono essere usati in tutte le entità, in funzioni e procedure di una libreria e in dichiarazioni esterne.

Extended Attributes

Page 10: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

• La struttura complessiva dell’interfaccia 1 e le sue connessioni con i servizi ad essa associati è quella mostrata nella figura sottostante:

About Interface 1

Page 11: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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 l’XML avviandosi così a standardizzare il linguaggio

XPDL XML Process Definition Language

Meta-Model

Page 12: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

Meta-Model

Page 13: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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à all’interno 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

Page 14: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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

Page 15: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

Caico Roberto,Termine Franceso

Descrivono le condizioni per passare da un’attività ad un’altra; si distinguono:

• Regular Transition. di tipo FROM … TO … COND

• Loop Connecting Transition Per esprimere cicli di condizione di transizione

Meta-Model – Transition Information

Page 16: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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 l’indirizzamento verso un determinato

tipo di funzione, di essere umano o di organizzazione. Ad esempio può essere definita un’intera 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

Page 17: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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

Page 18: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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

Page 19: Caico Roberto,Termine Franceso Workflow La semplificazione delluso del computer o lautomazione di un processo di lavoro in tutte le sue parti Workflow.

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 un’entità 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 un’istanza del dato (deprecated)

Meta-Model – Relevant Data – Data Type