Process modeling

Download Report

Transcript Process modeling

Workflow/Business Process Management
Introduction business process management
and workflow management
Wil van der Aalst
Eindhoven University of Technology
Faculty of Technology Management
Department of Information Systems
P.O. Box 513
5600 MB Eindhoven
The Netherlands
[email protected]
1
Overview of this course
Business Process Management
Relation with BPR process mining
(Re)design of workflows
Resource management
Analysis of workflows
Staffware Patterns
Logistical aspects
Protos
Guidelines
Concepts
Workflow management systems
FLOWer
Techniques for business process modelling
Adaptive workflow
Workflow management
Simulation
Interorganizational workflow
With or without WFMS
2
Relevant WWW sites
• http://www.workflowcourse.com
• http://www.workflowpatterns.com
• http://www.processmining.org
• http://is.tm.tue.nl/
• http://is.tm.tue.nl/staff/wvdaalst
•
http://www.wfmc.org
• http://www.pallas-athena.com/
•
http://www.aiim.org
• http://www.staffware.com
•
http://www.waria.com
• http://is.tm.tue.nl/research/woflan/
•
http://www.workflow-research.de
• http://www.exspect.com
•
http://www.sigpam.org
• http://www.ids-scheer.com
3
WARNING
It is not sufficient to understand the workflow
models. You have to be able to design them yourself !
4
WARNING
Start early with the assignment and tools: You really
need the time !!
5
Context
- role of models and trends -
6
Focus on models
Operational process
Information
System
Model
7
Some trends in Information Systems
1. From programming to assembling
2. From data orientation to process
orientation
3. From design to redesign and organic
growth
operating
system
generic
applications
domain specific
applications
tailor-made
applications
8
Before BPM: WFM
- workflow management -
9
Workflow management
Goal
To manage the flow of work such that the work is done at the right time by
the proper person.
Definitions
A workflow management system (WFMS) is a software package that can
be used to support the definition, management and execution of workflow
processes.
A workflow system (WFS) is a system based on a WFMS that supports a
specific set of business processes through the execution of computerized
process definitions
10
Relevance of workflow management systems
OS
OS
1965-1975
1975-1985
Processes:
• are becoming more important (BPR)
• are subject to frequent changes
• are becoming more complex
• are increasing in number
appl.
DBMS
appl.
UIMS
WFMS
appl.
DBMS
UIMS
appl.
DBMS
Trend:
OS
OS
1985-1995
1995-2005
 Workflow Management System
11
The basic idea:
processes
resources
WFMS
applications
• separation of processes, resources and applications
• focus on the logistics of work processes, not on the
contents of individual tasks
12
BPM: The next step
- business process management -
13
Business Process Management (BPM)
• “True Business Process Management is an amalgam of
traditional workflow and the 'new' BPM technology. It
then follows that as BPM is a natural extension of – and
not a separate technology to – Workflow, BPM is in fact
the merging of process technology covering 3 process
categories: interactions between (i) people-to-people;
(ii) systems-to-systems and (iii) systems-to-people – all
from a process-centric perspective. This is what true
BPM is all about.” Jon Pyke, CTO Staffware.
• “…a blending of process management/workflow with
application integration.” David McCoy, Gartner Group
14
Alternative view on BPM: The BPM life-cycle
diagnosis
process
enactment
process
design
implementation/
configuration
15
1993
diagnosis
process
enactment
process
design
implementation/
configuration
16
1998
diagnosis
process
enactment
process
design
implementation/
configuration
17
2003
diagnosis
process
enactment
process
design
implementation/
configuration
18
2008 ???
diagnosis
process
enactment
process
design
implementation/
configuration
19
BPR, CPI, Office logistics
- relationships to other domains -
20
Business Process Reengineering (BPR)
(Business Process Redesign)
• Hammer and Champy: "Reengineering the corporation" (1993)
• Keywords:
– fundamental
– radical
– dramatic
– process
• The "organize before automate"-principle is replaced by "process
thinking".
21
Processes and the organization
22
Continuous Process Improvement (CPI)
• Instead of of seeking a radical breakthrough, optimizing the process
by continuous, incremental improvements.
• Part of the Total Quality Management (TQM) approach
("doing it right the first time", "eliminate waste", ...)
high
CPI
chaos
BPR
change
impact
BPR
stagnation
CPI
CPI
BPR
CPI
low
low
high
frequency
time
BPR and CPI are both process centric and can be supported by a WFMS.
23
Differences between information logistics and production logistics
• Making a copy is easy and
cheap.
• There are no real limitations
with respect to the in-process
inventory.
• There are less requirements
with respect to the order in
which activities are executed.
• Quality is difficult to measure.
• Quality of end-products may
vary.
• Transportation of electronic
data is timeless.
• Production to stock is seldom
possible.
• Loops or rework occurs
frequently in administrative
processes, but are very seldom
or even impossible in
production processes.
• The customer (can)
influence(s) the handling in an
administrative process.
The difference between design and
control is fading!
24
History and CSCW
- the WFM/BPM market -
25
Historical overview of systems
Office Automation Prototypes
Officetalk-P
Officetalk-D
Scientific Workflow Systems
CrossFlow
ProMInanD (Esprit)
Officetalk-Zero
ADOME
Backtalk
Mariflow
Melmac
Domino
MENTOR
WIDE
APRICOT
SCOOP
WorCRAFT
DAISY
WorCOS
INCA
MOBILE
ObjectLens
FreeFlow
OVAL
METEOR
TRAMs
WISE
Panta Rhei
WAMO
WASA
Poise
1980
(Zur Muehlen, 2003)
Polymer
1985
D-Polymer
WASA2
Polyflow
1990
1995
2000
26
(Zur Muehlen, 2003)
Commercial Workflow Systems
ViewStar
Lucent Mosaix
eiStream
WANG Workflow
BlueCross
BlueShield
• Workflow
management is
already 25 years old
(cf. OfficeTalk, Skip
Ellis/Xerox)!
• The WFM hype is
over …, but there
are more and more
applications, and
WFM is adopted by
many other
technologies (ERP,
Web Services, etc.).
Eastman
SIGMA
WANG
JCALS
CARNOT
Verve
Versata
MS2 Accelerate
VisualInfo
Continuum
Netscape PM
iPlanet
jFlow
BEA PI
DST AWD
DST AWD
ImagePlus FMS/FAF
Pavone
Onestone
Domino Workflow
NCR ProcessIT
Exotica I - III
FlowMark
Pegasus
MQSeries Workflow
OpenPM
WorkManager
FlowJet
AdminFlow
Changengine
SNI WorkParty
Recognition Int.
Plexus FloWare
COSA
BancTec FloWare
BaaN
Ley COSA
Oracle Workflow
Digital Objectflow
DEC LinkWorks
Digital Proc.Flo.
Beyond BeyondMail
AltaVista Proc.Flow
Banyan BeyondMail
Fujitsu iFlow
Fujitsu Regatta
Teamware Flow
Staffware
FileNet WorkFlo
Visual WorkFlo
Panagon WorkFlo
FileNet Ensemble
Action Coordinator
ActionWorkflow
DaVinci
ActionWorks Metro
Xerox InConcert
TIB/InConcert
IABG ProMInanD
Olivetti X_Workflow
1980
1985
1990
LEU
1995
2000
27
unstructured
structured
CSCW spectrum
database application
(e.g., SAP R/3)
production workflow
(e.g., Staffware)
case handling
(e.g., FLOWer)
groupware
(e.g., Outlook)
ad-hoc workflow
(e.g., InConcert)
data centric
process centric
28
Refined view (without datbase applications)
explicitly
structured
implicitly
structured
production
workflow
case handling
ad-hoc
structured
unstructured
ad-hoc workflow
groupware
data-driven
process-driven
29
Trade-offs
high
fle
s
y
lit
bi
xi
p
p
u
t
or
m
r
fo
r
pe
e
c
an
design
effort
low
groupware
ad-hoc
case
workflow handling
production
workflow
30
human
oriented
system
oriented
groupware
workflow
transaction
processing
P2P
=
Person
To
Person
A2P
=
Application
To
Person
A2A
=
Application
To
Application
31
Focus on "classical" workflow management systems, but ...
Four types of "workflow-like" systems:
1. Information systems with hard-coded workflows
(process& organization specific).
2. Custom-made information systems with generic
workflow support (organization specific).
3. Generic software with embedded workflow
functionality (e.g., the workflow components of ERP,
CRM, PDM, etc. systems).
4. Generic software focusing on workflow functionality
(e.g., Staffware, MQSeries Workflow, FLOWer, COSA,
Oracle BPEL, Filenet, etc.).
32
WFM architecture
- reference model and example -
33
Reference model of the Workflow Management Coalition
Process
Definition Tools
Interface 1
Interface 5
Workflow AP I and Interchange formats
Interface 4
Other Workflow
Enactment Service(s)
Workflow Enactment Service
Administration
& Monitoring
Tools
Workflow
Engine(s)
Interface 2
Workflow
Client
Applications
Workflow
Engine(s)
Interface 3
Invoked
Applications
What?
When?
Who?
34
Process
Definition T ools
Interface 1
Interface 5
Workflow API and Interchange formats
Interface 4
Other W orkflow
Enactment Service(s)
Workflow Enactment Service
Administration
& M onitoring
T ools
Workflow
Engine(s)
Interface 2
Workflow
Client
Applications
Workflow
Engine(s)
Interface 3
Invoked
Applications
35
Process
Definition T ools
Interface 1
Interface 5
Workflow API and Interchange formats
Interface 4
Other W orkflow
Enactment Service(s)
Workflow Enactment Service
Administration
& M onitoring
T ools
Workflow
Engine(s)
Interface 2
Workflow
Client
Applications
Workflow
Engine(s)
Interface 3
Invoked
Applications
36
Process
Definition T ools
Interface 1
Interface 5
Workflow API and Interchange formats
Interface 4
Other W orkflow
Enactment Service(s)
Workflow Enactment Service
Administration
& M onitoring
T ools
Workflow
Engine(s)
Interface 2
Workflow
Client
Applications
Workflow
Engine(s)
Interface 3
Invoked
Applications
37
38
Workflow perspectives
- processes dominate! -
39
Workflow perspectives
• Process perspective (tasks and the routing of
cases)
• Resource perspective (workers, roles, 4-eyes
principle, etc.)
• Case/data perspective (process instances and
their attributes)
• Operation/application perspective (forms,
application integration, etc.)
• ...
40
Process perspective: Protos (extended Petri nets)
41
Process perspective: Staffware
42
Process perspective: COSA (Petri nets)
43
Process perspective: Baan DEM
44
Process perspective: Event driven process chains (ARIS/SAP)
Need
f or trip
has arisen
Entry
of a
trav el
request
Trip
is requested
Approv al
of trav el
request
Planned
trip
is rejected
Planned
trip
is approv ed
Need
to correct
planned
trip
is transmitted
45
(Oracle) BPEL
<sequence name="main">
<flow name="Flow_1">
<links>
<link name="receive-to-assess"/>
<link name="receive-to-approval"/>
<link name="approval-to-reply"/>
<link name="assess-to-setMessage"/>
<link name="setMessage-to-reply"/>
<link name="assess-to-approval"/>
</links>
<sequence name="sequenceReceive">
<source linkName="receive-to-assess" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount')
&lt; 10000"/>
<source linkName="receive-to-approval" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount')
&gt;= 10000"/>
<receive name="receiveInput" partnerLink="client" portType="client:LoanApproval" operation="initiate" variable="inputVariable" createInstance="yes"/>
</sequence>
<sequence name="sequenceAssess">
<target linkName="receive-to-assess"/>
<source linkName="assess-to-setMessage" transitionCondition="bpws:getVariableData('risk') = 'low'"/>
<source linkName="assess-to-approval" transitionCondition="bpws:getVariableData('risk') != 'low'"/>
<assign name="initiateAssessor">
<copy>
<from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:firstName"/>
<to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:firstName"/>
</copy>
<copy>
<from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:name"/>
<to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:name"/>
</copy>
<copy>
<from variable="inputVariable" part="payload" query="/client:LoanApprovalProcessRequest/client:amount"/>
<to variable="invokeAssessor_initiate_InputVariable" part="payload" query="/ns1:AssessorProcessRequest/ns1:amount"/>
</copy>
</assign>
<invoke name="invokeAssessor" partnerLink="Assessor" portType="ns1:Assessor" operation="initiate" inputVariable="invokeAssessor_initiate_InputVariable"/>
<receive name="receiveAssessor" partnerLink="Assessor" portType="ns1:AssessorCallback" operation="onResult"
variable="receiveAssessor_onResult_InputVariable" createInstance="no"/>
<assign name="completeAssessor">
<copy>
<from variable="receiveAssessor_onResult_InputVariable" part="payload" query="/ns1:AssessorProcessResponse/ns1:level"/>
<to variable="risk"/>
</copy>
</assign>
</sequence>
<sequence name="sequenceNoApproval">
<target linkName="assess-to-setMessage"/>
<source linkName="setMessage-to-reply"/>
<assign name="setAccepted">
<copy>
<from expression="'Accepted'"/>
<to variable="outputVariable" part="payload" query="/client:LoanApprovalProcessResponse/client:result"/>
</copy>
</assign>
</sequence>
46
Petri nets as a basis
• The process perspective is the most dominant one.
• There are many modeling techniques and tools
– BPEL, BPMN, DFD, ISAC, SADT, PN, HLPN, PA, FC, UML, ...
– Simulation tools, design tools, CASE tools, WFMS, ...
• Focus on the essential concepts rather than (system-)specific
languages.
• Approach in this course (1) first master workflow modeling
in terms of workflow nets (a subset of Petri nets), and (2)
only then look into mappings to and from (system-)specific
languages.
47
Example of a process model: A Petri net modeling order processing
c4
c1
start
wait_for_availability
c3
ship_goods
c5
register
c2
reminder
archive
receive_payment
end
c6
send_bill
48
Play the token game …
c4
c1
start
wait_for_availability
c3
ship_goods
c5
register
c2
reminder
archive
receive_payment
end
c6
send_bill
49
Test Exercise: Dining philosophers
• 5 philosophers sharing 5 chopsticks: chopsticks are located in-between
philosophers
• A philosopher is either in state eating or thinking and needs two chopsticks
to eat.
• Model as a Petri net.
50