Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
1
WorkFlow Management Systems
2
A Process is a set of activities that must be completed to produce a result valued by the customer
A Process can be any part of an organization that takes inputs and transforms them into outputs
What is a Business Process ?
2
3
What is a Work-Flow ?
Automation of a business process, in whole or part, during which documents, information or tasks are passed from one participant to another for action, according to a set of procedure rules (WFMC)
Standards set by WorkFlow Management Coalition (WFMC)
http://wfmc.org
4
Business Process Example
3
5
Workflow entities
Documents, Data and Activities (Tasks)
Participants or Agents
Predefines set of rules
Business Process description as
representation of Coordination of agents
and activities
6
Workflow Examples
Loans Management
Orders Management
Human Resource Evaluation
Weekly data sheets
Evaluation of credit requests
4
7
Workflow Automation
Technologies for automating business processes management
Groupware supporto team-work (es.: shared editing
of documents)
Workflow Management System (WFMS)Automated Execution of a Business
Process
8
Software System used for:
defining business processes (workflow)
create, manage and execute workflows
Interact with workflow participants
invoke applications and external software agents
Manage process instances
– Many instances of the same business process can be executed in the same time
– Each instance has its own data and participants
Workflow Management System
5
9
WFMS
Five main WFMS functions:
Business process execution
Documents/Activity assignment
Monitoring and control
Notification and queues
Task assignments and automation
10
WorkFlow Management Coalition WFMC
The WorkFlow Management Coalition (www.wfmc.org)
consortium of WFMS providers
Users and analysts
Goal: define standards for WFMS
Standard notations (XPDL)
Standard terminology
Standard protocols among WFMS and external applications
6
11
WFMS main features
Build-time functions
Definition and modeling of business process and activites
Run-time control functions:
business process execution
Activiation of activities as aprts of a business process
Run-time interactions
With users and other applications
Among different activites in a business process
12
WFMS features
Process
Definition
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
7
13
Relationships among Workflow concepts
Business ProcessDesign
Business ProcessExecution
14
Process Definition
Modeling of business process
For analysis, evaluation and simulation
To be executed in a WFMS
Process Definition consists in:
An activity diagram
Process’ Start/Stop Criterias
Activity Data
participants (actors)
documents and related data
External Applications used by the process
8
15
Business Process Languages
BPEL
Business Process Execution Language
BPML
Business Process Modelling Language
XPDL
XML Process Definition Language
16
Languages (BPEL)
BPEL (Business Process Execution Language) allows to define abstract and executable processes
BPEL is supported by the majority of companies
When using BPEL, software already exists (from several vendors) on which such processes can be executed (BPEL servers) and developed (BPEL designers).
BPEL follows the orchestration paradigm: a central process takes control over the involved services.
BPEL was developed by IBM and Microsoft, but it was finally submitted to OASIS, thus creating the WSBPEL (Web Services BPEL).
A BPEL process consists of activities connected by links
9
17
Languages (BPML) BPML (Business Process Modelling Language)
Supported by the Business Process Modelling Initiative is "a meta-language for the modelling of business processes, just as XML is a meta-language for the modelling of business data".
BPML provides an abstracted execution model for collaborative and transactional business processes that span multiple applications and business partners.
The specification is quite similar to BPEL but BPML also supports the scheduling of tasks at specific times.
It also supported persistence, roles, instance correlation and recursive decomposition.
BPML supports mechanisms to handle exceptions as well as long and short running transactions.
18
XPDL Language The XML Process Definition Language (XPDL) is a
format standardized by the WfMC to interchange business process definitions between different workflow products like modelling tools and workflow engines.
It is a file format defined by a XML Schema that represents the "drawing" of the process definition
It has X & Y coordinates and node size. It has a concept of lines, and points along the line that give it a particular path. The nodes and lines have attributes which can specify executable information such as roles, activity descriptions, timers, web service calls, etc.
XPDL is extensible. Each tool has specialized requirements on the diagram, it can represent these using extended attributes.
10
20
Workflow Participant (Actor)
It is an agent executing the task associated to a particular activity instance
When a task is assigned to an actor it is inserted in the Actor’s WORKLIST
WORKLIST is an ordered list of task to be done
Each actor has a worklist
Participant can be:
A human resource
A software application
A specific hardware
21
Process Instances and WorkLists
Business process is defined with a language
A Process Instance is created
Process Istance is composed by many tasks
Each task is assigned to one or more actors
A Work-List is a list of Work-Item (task) that must be executed by an actor
A work-list per actor
An actor can represent a group of actors sharing a common task
11
22
Execution examples
Work List 1
Work Item 1
Work Item 2
Work Item 3
Process Definition Process Instance Worklist
Activity B
1st Process Instance
2nd Process Instance
3rd Process Instance
Activity DActivity A
Activity C
Process Definition A
Activity B
Activity D
Activity A Activity C Activity E
Process Definition BWork Item 20
Work Item 22
1st Process Instance
2nd Process Instance
Work Item N
Work Item N
Work Item 4
Work Item 21
Work List 2
Work List 1
Work List 2
23
WFMS Architecture
12
24
Other Workflow
Enactment Service(s)
Workflow API and Interchange
formats
Workflow
Engine (s)
Workflow Enactment Service
Process
Definition Tools
Workflow Client
Applications
Invoked
Application
Administr. &
Monitoring
Tools
Interface 1
Interface 5Interface 4
Interface 3Interface 2
Workflow
Engine (s)
Reference Model
25
WorkFlow Engine
Different WFMSs (Workflow engines) can beused to execute a business process
Software Applications can interact with WFMSthrough the Workflow ApplicationProgramming Interface (WAPI).
A process instance can be executed
In a single WorkFlow engine
Or on different WorkFlow engines
– Using WFMC interoperability interface
13
26
Interaction with external resources
client application interface (2)
Defines WorkFLow Client interactions
– (e.g. show worklist)
invoked application interface (3)
WF engine can invoke external apps to perform an activity
27
Workflow Enactment Service
Applications &
IT Tools
Business Process Analysis
Modelling & Definition Tools
Process editing
Build time
Run Time
Run Time
Workflow control data
Workflow relevant data
Application data
Definizione processi
14
28
Process Analysis
Modelling & Definition
Tools
Process Definition
Interchange
Format & APIs
Workflow
Engine (s)
Workflow Enactment Service
Process Definition Interface (itf 1)
29
Workflow Enactment Service
Workflow
Engine (s)
Client
ApplicationInvoked
Application
User Interface
Command Set
Connection/Disconnection
Process and Activity Control
Functions
Process Status Functions
Worklist Manipulation
Commands
Client Application Interface (itf 1)
Standard APIs & Interchange
15
30
Workflow Enactment Service
Workflow
Engine (s)
Application
Agent
Invoked
Application
Workflow-
enabled
Applications
Standardised APIs &
Interchange
Application Specific
Interfaces
(Local or Remote)
Invoked Application Interface
31
Defined by Workflow Coalition to enable
communciation among different WFMS
4 interoperability models
Chained-Services Model
Nested Process Model
Peer-peer model
Synchronized Parallel Model
Workflow Interoperability (itf 4)
16
32
Activity or sub-process invocation
Process / Activity status / control
Application / Workflow relevant data transfer
Synch-point coordination
Process definition read / write
Workflow API and Interchange format
Workflow Enactment Service
Workflow API and Interchange format
Workflow Enactment Service
Workflow
Engine (s)
Workflow
Engine (s)
Workflow Interoperability Interface
33
Allows transfering a single activity betweentwo WFMS engines• they work indipendently after the transfer• without any other synchronization
A1A4
A2 A3
A5 B1B3
B4
B2
B5
Process A Process B
Chained-Services Model
17
34
• Activity (A3) of process A executed as a B process in WF B engine
•Control returns to A when B is ended
A1A4
A2 A3
A5 B1B3
B2
B4 B5
Processo BProcess A
Domain of Workflow
Service A
Domain of Workflow
Service B
Nested Process Model
35
C1C4
C2 C3
C5 C6
• Shared Execution of a
Process, whose activities are
splitted and executed on 2
engines
• E.g.: C1,C2,C5 executed by A
C3, C4 , C6 executed by B
Both WF must:
• Support a common
communication interface
• Be able to interpret a process
model
• Import an external BP model -
transfer data at run-time
Workflow
Engine (s)
A
Workflow
Engine (s)
B
Peer-Peer Model
18
36
Two processes work indipendently
One waits the other when Synchronization
Point is reached
A1A4
A2 A3
A5 B1B3
B2
B4 B5
Process BProcess A
Domain of WFMS A Domain of WFMS B
Synchronization
Point
Parallel synchronized Model
37
Managent
Application
Workflow
Engine (s)
Workflow Enactment Service
A
WAPI
Interface 5
Workflow
Engine (s)
Workflow Enactment Service
BTypical Functional Areas
User management
Role management
Audit management
Resource control
Process supervisory functions, etc
Systems Admin. & Monitoring Interface