workflow management system

14
WorkFlow Management Systems 2 Cosa è un Workflow? Automazione di un processo aziendale (business process) con: documenti, informazioni e compiti partecipanti insieme predefinito di regole obiettivo comune

Upload: wellsite

Post on 07-Dec-2014

666 views

Category:

Documents


0 download

DESCRIPTION

Document about workflow management system

TRANSCRIPT

Page 1: workflow management system

1

WorkFlowManagement Systems

2

Cosa è un Workflow?

• Automazione di un processo aziendale (business process) con:

• documenti, informazioni e compiti

• partecipanti

• insieme predefinito di regole

• obiettivo comune

Page 2: workflow management system

2

3

Esempi di workflow

gestione prestitiordini acquistovalutazione personalefogli orari settimanaliapprovazione richieste rimborso assicurativo

4

Workflow automation

TecnologieTecnologie per la gestione di processiGroupware

supporto alla gestione del lavoro di gruppo (es.: editing di documenti )

Workflow Management System (WFMS)supporto alla gestione di documenti all’interno di

un processoWorkflow Coalition

Page 3: workflow management system

3

5

Sistema software per:

definire processi

crea, gestisce l’esecuzione di workflow

interagire con i partecipanti

chiamare applicazioni e strumenti software esterni

Gestire molte istanze di processo (o casi)– possono essere attive durante l’esecuzione di un

processo,

– Ognuna con i propri dati e i propri partecipanti

Workflow Management System

6

WFMSCinque sono le funzioni essenziali di un prodotto di gestione di WF:

instradamenti documenti / attivitàmonitoraggio e controllonotifica o code di lavoroassegnamento lavoro e automazionegestione procedure

Page 4: workflow management system

4

7

WorkFlow Management Coalition WFMC

The WorkFlow Management Coalition(www.wfmc.org)

consorzio di produttori di WFMSutenti e analisti

Obiettivo: definire standard per WFMSnotazioni standard (XPDL)terminologia standardstandard di interconnessione tra WFMS e con applicazioni esterne.

8

Aree funzionali dei WFMSBuild-time functions (funzioni di creazione)

riguardano la definizione e la modellazione del processo e delle attività che lo compongono

Funzioni di controllo run-time:riguardano la gestione dei processi di workflow in un ambiente operativo, l’attivazione delle diverse attività che devono essere gestite come parte del processo

Interazioni run-timecon gli utenti e altre applicazioni

nell’esecuzione delle attività del WF

Page 5: workflow management system

5

9

WFMS: aree funzionali

ProcessDefinition

Build Time

Business Process Analysis,Modelling & Definition Tools

Run Time

Workflow Enactment Service

Process changes

Process Instanciation& Control

Applications& IT Tools

Interaction with Users & Application Tools

Process Design& Definition

10

Definizione dei processiModellazione dei processi aziendali

Per simulazione e analisiPer essere eseguiti in un WFMS

La definizione di un processo consiste in:un diagramma di attività (Activity, BPMN,..)criteri per iniziare e terminare il processoinformazioni sulle singole attività, partecipanti (attori)documenti e dati collegatiapplicazioni sw da utilizzare

Page 6: workflow management system

6

11

Partecipante di un WorkflowE’ una risorsa che esegue il task associato a una particolare istanza di attività. Un Task è assegnato a un attore (partecipante)

Viene inserito nella WORKLIST di un attoreWORKLIST è lista ordinata dei task da svolgere

Ogni attore ha una worklistIl partecipante può essere:

una risorsa umana una applicazione softwarehardware specifico

12

Process Instances e WorkListsUn processo aziendale viene definito con una particolare notazioneUna pratica relativa a quel processo viene aperta => creazione Process InstanceProcess Istance è composta da diversi task

A ogni task viene assegnato uno o più attoriUna Work-List è elenco di Work-Item (task) che attore deve svolgere

Una work-list per ogni attore Un attore può rappresentare un gruppo di partecipanti che condividono un task da svolgere

Page 7: workflow management system

7

13

Esempio di esecuzione

W or k L ist 1

W o r k I te m 1

W o r k I te m 2

W o r k I te m 3

P r o c e s s D e f in i t io n P r o c e s s I n s t a n c e W o r k li s t

A c t iv i ty B

1 s t P r o c e s s I n s t a n c e

2 n d P r o c e s s I n s t a n c e

3 r d P r o c e s s I n s t a n c e

A c t iv i ty DA c t iv i ty A

A c t iv i ty C

P r o c e s s D e f in i t io n A

A c t iv i ty B

A c t iv i ty D

A c t iv i ty A A c t iv i ty C A c t iv i ty E

P r o c e s s D e f in i t io n B W o r k I te m 2 0

W o r k I te m 2 2

1 s t P r o c e s s I n s t a n c e

2 n d P r o c e s s I n s t a n c e

W o r k I te m N

W o r k I te m N

W o r k I te m 4

W o r k I te m 2 1

W or k L ist 2

W o r k L is t 1

W o r k L is t 2

14

Architettura di WFMSArchitettura di WFMS

Page 8: workflow management system

8

15

OtherOther WorkflowWorkflowEnactmentEnactment ServiceService(s) (s)

WorkflowWorkflow API and API and InterchangeInterchangeformatsformats

WorkflowWorkflowEngineEngine (s)(s)

WorkflowWorkflow EnactmentEnactment ServiceService

ProcessProcessDefinitionDefinition ToolsTools

WorkflowWorkflow ClientClientApplicationsApplications

InvokedInvokedApplicationApplication

AdministrAdministr. & . & MonitoringMonitoring

ToolsTools

Interface 1Interface 1

Interface 5Interface 5Interface 4Interface 4

Interface 3Interface 3Interface 2Interface 2

WorkflowWorkflowEngineEngine (s)(s)

Modello di

Riferimento

16

WorkFlow EnginePossono esistere uno o più motori di workflow per creare, gestire e eseguire istanze di processi.

Le applicazioni possono interagire con WFMS mediante la Workflow ApplicationProgramming Interface (WAPI).

Un’istanza di processo può essere eseguita in un dominio di WorkFlow omogeneo, Su motori di WorkFlow diversi (utilizzando interfaccia WFMC interoperability)

Page 9: workflow management system

9

17

Interazione con risorse esterne client application interface (2)

Definisce interazioni con il WorkFLowClient (es. visualizzare worklist) Serve a interagire con applicazioni esterne

invoked application interface (3)WF engine può attivare automaticamente un software esterno per una particolare attività

18

WorkflowWorkflow EnactmentEnactment ServiceService

ApplicationsApplications & & IT IT ToolsTools

Business Business ProcessProcess AnalysisAnalysisModellingModelling & & DefinitionDefinition ToolsTools

Modifiche ai processiModifiche Modifiche ai processiai processi

Build timeBuildBuild timetime

Run TimeRunRun TimeTime

Run TimeRunRun TimeTime

Workflow control dataWorkflowWorkflow control datacontrol data

Workflow relevantdata

WorkflowWorkflow relevantrelevantdatadata

Application dataApplicationApplication datadata

Definizione Definizione processiprocessi

Page 10: workflow management system

10

19

ProcessProcess AnalysisAnalysisModellingModelling & & DefinitionDefinition

ToolsTools

ProcessProcess DefinitionDefinition

InterchangeInterchangeFormat & Format & APIsAPIs

WorkflowWorkflowEngineEngine (s)(s)

WorkflowWorkflow EnactmentEnactment ServiceService

Process Definition Interface (itf 1)

20

WorkflowWorkflow EnactmentEnactment ServiceService

WorkflowWorkflowEngineEngine (s)(s)

ClientClientApplicationApplication

InvokedInvokedApplicationApplication

UserUser InterfaceInterface

CommandCommand SetSet

Connection/Connection/DisconnectionDisconnection

ProcessProcess and Activity Control and Activity Control FunctionsFunctions

ProcessProcess Status Status FunctionsFunctions

WorklistWorklist ManipulationManipulationCommandsCommands

Client Application Interface (itf 1)

Standard Standard APIsAPIs & & InterchangeInterchange

Page 11: workflow management system

11

21

WorkflowWorkflow EnactmentEnactment ServiceService

WorkflowWorkflowEngineEngine (s)(s)

ApplicationApplicationAgentAgent

InvokedInvokedApplicationApplication

WorkflowWorkflow--enabledenabled

ApplicationsApplications

StandardisedStandardised APIsAPIs & & InterchangeInterchange

ApplicationApplication SpecificSpecificInterfacesInterfaces

((LocalLocal or Remote)or Remote)

Invoked Application Interface

22

Definita da Workflow Coalition per scambiare elementi di lavoro tra WFMS diversi

4 diversi possibili modelli di interoperabilitàModello a servizi concatenatiModello a sottoprocessi annidatiModello peer-peerModello parallelo sincronizzato

Workflow Interoperability (itf 4)

Page 12: workflow management system

12

23

Activity or subActivity or sub--process invocationprocess invocation

Process / Activity status / control Process / Activity status / control

AApplicationpplication / Workflow relevant data transfer / Workflow relevant data transfer

SynchSynch--point coordinationpoint coordination

Process definition read / writeProcess definition read / write

WorkflowWorkflow API and API and InterchangeInterchange formatformat

WorkflowWorkflow EnactmentEnactment ServiceService

WorkflowWorkflow API and API and InterchangeInterchange formatformat

WorkflowWorkflow EnactmentEnactment ServiceService

WorkflowWorkflowEngineEngine (s)(s)

WorkflowWorkflowEngineEngine (s)(s)

Workflow Interoperability Interface

24

Consente il trasferimento di un singolo elemento di lavoro (istanza di processo o attività) tra due ambienti WFMS diversi• operano indipendentemente dopo lo scambio• senza ulteriori sincronizzazioni

A1A1A4A4

A2A2 A3A3

A5A5 B1B1B3B3

B4B4

B2B2

B5B5

ProcessProcess AA ProcessProcess BB

Modello a servizi concatenati

Page 13: workflow management system

13

25

• attività (A3) di A eseguita come processo completo (B) sul sistema WF B

• ritorno del controllo ad A

A1A1A4A4

A2A2 A3A3

A5A5 B1B1B3B3

B2B2

B4B4 B5B5

Processo BProcesso BProcessProcess AA

DomainDomain of of WorkflowWorkflowServiceService A A

DomainDomain of of WorkflowWorkflowServiceService A A

Modello a sottoprocessi annidati

26

C1C1 C4C4

C2C2 C3C3

C5C5 C6C6• Esecuzione Processo condiviso,

eseguita da 2 engine che si dividono le attività

• Es: C1, C2 e C5 sono eseguiti da AC3, C4 e C6 sono eseguiti da B

Requisiti entrambi i servizi di WF :• seguano evoluzione del BP • supportino una interfaccia comune

per la comunicazione• siano in grado di interpretare una

definizione di processo comune• importare la definizione di un

processo esterno - trasferire dati run-time durante l’esecuzione

WorkflowWorkflowEngineEngine (s) (s)

AA

WorkflowWorkflowEngineEngine (s) (s)

BB

Modello Peer-Peer

Page 14: workflow management system

14

27

I due processi operano indipendentementepunti di sincronizzazione

A1A1A4A4

A2A2 A3A3

A5A5 B1B1B3B3

B2B2

B4B4 B5B5

Processo BProcesso BProcesso AProcesso A

Dominio del WFMS ADominio del WFMS A Dominio del WFMS BDominio del WFMS B

Punto di Punto di sincronizzazionesincronizzazione

Modello parallelo sincronizzato

28

ManagentManagentApplicationApplication

WorkflowWorkflowEngineEngine (s)(s)

WorkflowWorkflow EnactmentEnactment ServiceService

AAWAPI WAPI

Interface 5Interface 5

WorkflowWorkflowEngineEngine (s)(s)

WorkflowWorkflow EnactmentEnactment ServiceService

BBTypicalTypical FunctionalFunctional AreasAreas

UserUser managementmanagementRoleRole managementmanagementAuditAudit managementmanagementResourceResource controlcontrolProcessProcess supervisorysupervisory functionsfunctions, , etcetc

Systems Admin. & Monitoring Interface