Workflow/Business Process Management
Introduction business process management
d
kfl
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
Overview of this course
Relation with BPR
process mining
(Re)design of workflows
Business Process Management
(Re)design of workflows
A
l
i
f
kfl
Resource management
L
i ti
l
t
Analysis of workflows
Staffware
Protos
Concepts
Logistical aspects
Patterns
Techniques for business process modelling
Workflow management systems
p
Guidelines
FLOWer
Simulation
W kfl
Techniques for business process modelling
With or without WFMS
Adaptive workflow
Interorganizational workflow
Workflow management
With or without WFMS
Relevant WWW sites
•
http://www.workflowcourse.com
• http://www.workflowpatterns.com
p
p
• http://www.processmining.org
http://is tm t e nl/
• http://is.tm.tue.nl/
• http://is.tm.tue.nl/staff/wvdaalst
•
http://www.wfmc.org
•
http://www.aiim.org
•
http://www.waria.com
• http://www.pallas-athena.com/
• http://www.staffware.com
• http://is tm tue nl/research/woflan/
p
•
http://www.workflow-research.de
•
http://www.sigpam.org
http://is.tm.tue.nl/research/woflan/
• http://www.exspect.com
• http://www.ids-scheer.com
WARNING
It is not sufficient to understand the workflow
WARNING
S
i
i
Start early with the assignment and tools: You really
need the time
!!
Context
Context
role of models and trends
role of models and trends
-Focus on models
Operational process
Information
System
System
S
t
d i I f
ti
S t
Some trends in Information Systems
1. From programming to assembling
2 F
d t
i
t ti
t
2. From data orientation to process
orientation
3 F
d i
d i
d
i
operating
system
3. From design to redesign and organic
growth
system
generic
generic
applications
d
i
ifi
domain specific
applications
il
d
tailor-made
Before BPM: WFM
Before BPM: WFM
workflow management
workflow management
-Workflow management
Goal
To manage the flow of work such that the work is done at the right time by
the proper person
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.
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
Relevance of workflow management systems
Trend
:
UIMS
UIMS
Trend
:
D
BMS
appl.
appl.
D
BMS
D
BMS
WF
M
appl.
appl.
UIMS
UIMS
OS
OS
OS
OS
D
D
D
M
S
a
1965 1975
1975 1985
1985 1995
1995 2005
Processes:
• are becoming more important (BPR)
1965-1975
1975-1985
1985-1995
1995-2005
• are subject to frequent changes
• are becoming more complex
i
i
i
b
• are increasing in number
Workflow Management System
⇒
g
y
The basic idea:
processes
resources
WFMS
applications
applications
• separation of processes, resources and applications
• focus on the logistics of work processes, not on the
contents of individual tasks
contents of individual tasks
BPM: The next step
BPM: The next step
business process management
business process management
-Business Process Management (BPM)
•
“True Business Process Management is an amalgam of
traditional workflow and the 'new' BPM technology. It
f
gy
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)
t
t
t
d (iii)
t
t
l
ll
(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
BPM is all about.
Jon Pyke, CTO Staffware.
•
“…a blending of process management/workflow with
application integration ”
David McCoy Gartner Group
1993
di
i
diagnosis
process
process
process
design
process
enactment
implementation/
configuration
g
1998
di
i
diagnosis
process
process
process
design
process
enactment
implementation/
configuration
g
2003
di
i
diagnosis
process
process
process
design
process
enactment
implementation/
configuration
g
BPR CPI Office logistics
BPR, CPI, Office logistics
-
relations avec d’autres
domaines-Business Process Reengineering (BPR)
(Business Process Redesign)
• Hammer and Champy: "Reengineering the corporation" (1993)
• Keywords:
• Keywords:
– fundamental
– radical
– dramatic
– process
• The "organize before automate"-principle is replaced by "process
thinking".
••
Le principe
Le
p
principe de
p
p
p
de “
“organiser
organiser avant
g
g
avant d’automatiser
d’automatiser”
” se
se trouve
trouve
remplacé
•
Les Processus et l’organization : on parle de transversalisation
O
O
tt
éé d’
d’
i i
i i
t é
t é
ll
f
f
ti
ti
d’
d’
i ti
i ti
à
à
On
On est
est passé
passé d’une
d’une vision
vision centrée
centrée sur
sur les
les fonctions
fonctions d’une
d’une organisation
organisation à
à
une
Continuous Process Improvement (CPI)
Continuous Process Improvement (CPI)
• Instead of seeking a radical breakthrough, optimizing the process by continuous, incremental
improvements.
•
Au lieu d’une remise en cause profonde, optimiser les processus par une approche
d’amélioration continuelle et incrémentale.
• Part of the Total Quality Management (TQM) approach
("doing it right the first time", "eliminate waste", ...)
•
Le CPI fait partie de l’approche TQM (“le faire juste la première fois”, “éliminer les pertes”,
…).
high
ct
BPR
chaos
e
BPR
CPI
impa
c
CPI
stagnation
chang
e
BPR
CPI
low
low
high
stagnation
time
BPR
CPI
Differences between information logistics and production logistics
Différences entre les logistiques d’information et de production
•
Making a copy is easy and cheap.
•
Faire une copie est facile et “bon marché”.
•
There are no real limitations with respect to
•
Transportation of electronic data is timeless.
•
Le transport des données électroniques est intemporel.
•
Production to stock is seldom possible
•
There are no real limitations with respect to
the in-process inventory.
•
Il n’y aucune limitation réelle dans
l’inventaire des entrées de processus.
•
Production to stock is seldom possible.
•
La production à stocker est rarement possible.
•
Loops or rework occurs frequently in administrative
processes, but are very seldom or even impossible in
•
There are less requirements with respect to
the order in which activities are executed.
•
Il y a moins de conditions en ce qui
concerne l'ordre dans lequel les activités
p
,
y
p
production processes.
•
Les boucles ou la reprise se produit fréquemment dans
des processus administratifs, mais est très rarement ou
même impossible dans des processus de fabrication
concerne l'ordre dans lequel les activités
sont exécutées.
•
Quality is difficult to measure.
•
La qualité est difficile à mesurer
même impossible dans des processus de fabrication.
•
The customer (can) influence(s) the handling in an
administrative process.
•
Le client (peut) influence(r) la manipulation dans un
La qualité est difficile à mesurer.
•
Quality of end-products may vary.
•
La qualité des produits finaux peut varier.
Le client (peut) influence(r) la manipulation dans un
processus administratif.
Th diff
b t
d i
d
t l i f di
!
Histore et TCAO
Histore et TCAO
le marché du WFM/BPM
le marché du WFM/BPM
-Historical overview of systems
Historical overview of systems
Vue d'ensemble historique des systèmes
Office Automation Prototypes
Scientific Workflow Systems
Officetalk-Zero
CrossFlow
Officetalk-P
ADOME
Officetalk-D
ProMInanD (Esprit)
SCOOP
Backtalk
WIDE
MENTOR
Mariflow
APRICOT
Melmac
WorCRAFT
Domino
DAISY
MOBILE
INCA
WorCOS
WorCRAFT
METEOR
WISE
TRAMs
OVAL
ObjectLens
FreeFlow
WASA
WASA
2WISE
Panta Rhei
Poise
Polymer
D-Polymer
Polyflow
WAMO
• Workflow management is
Commercial Workflow Systems
ViewStar WANG SIGMA Eastman WANG Workflow eiStream Lucent Mosaix BlueCross
(Zur Muehlen, 2003)
• Workflow management is
already 25 years old (cf.
OfficeTalk, Skip Ellis/Xerox)!
CARNOT Verve Versata N t PM MS2 Accelerate VisualInfo WANG SIGMA BlueShield JCALS iPl t
• Le WFM a déjà plus de 25
ans derrière lui (cf.
OfficeTalk, Skip Ellis/Xeros)!
jFlow Pavone O f BEA PI Netscape PM DST AWD ImagePlus FMS/FAF DST AWD Continuum iPlanet
• The WFM hype is over …,
but there are more and more
applications and WFM is
Exotica I - III
FlowMark MQSeries Workflow Onestone Domino Workflow
OpenPM FlowJet NCR ProcessIT
Pegasus
applications, and WFM is
adopted by many other
technologies (ERP, Web
Services etc )
SNI WorkParty
AdminFlow Changengine WorkManager
Plexus FloWare BancTec FloWare COSA BaaN Ley COSA
Oracle Workflow Digital Objectflow Recognition Int.
Services, etc.).
• L’exagération du WFM est
dépassée …, mais il y a de
StaffwareDigital Proc.Flo. AltaVista Proc.Flow
Teamware Flow Fujitsu iFlow Beyond BeyondMail DEC LinkWorks Fujitsu Regatta Banyan BeyondMail
plus en plus d’applications et
le WFM est adopté par
beaucoup d’autres
Staffware ActionWorkflow Action Coordinator ActionWorks Metro DaVinciFileNet WorkFlo Visual WorkFlo
FileNet Ensemble
Panagon WorkFlo
CSCW spectrum
Le spectre du TCAO
Le spectre du TCAO
Refined view (without database applications)
Vue raffinée (sans applications de base de données)
explicitly
structured
production
workflow
implicitly
structured
case handling
ad-hoc
structured
ad-hoc workflow
structured
unstructured
groupware
unstructured
groupware
Trade-offs
Trade offs
high
high
t
ce
fle
xib
ilit
su
pp
or
t
er
fo
rm
an
ce
ity
design
pe
r
low
des g
effort
low
human
i
d
system
i
d
oriented
oriented
groupware
groupware
workflow
transaction
transaction
processing
P2P
A2P
A2A
P2P
=
Person
A2P
=
Application
A2A
=
Application
F
t
f "
kfl
lik "
t
Focus on "classical" workflow management systems, but ...
Se concentrer sur les WFM(s) « classiques », mais…
Four types of "workflow-like" systems:
Il existe 4 type de systèmes assimilables aux workflows :
1. Information systems with
hard-coded
workflows (process& organization specific).
Les
SI(s) avec des workflows programmés (spécifiques à l’organisation et à ses processus).
( )
p g
( p
q
g
p
)
2. Custom-made
information systems with
generic
workflow support (organization
specific).
SI(s) fait sur commande avec un support workflow générique (spécifique à
une organisation)
une organisation).
3. Generic software with embedded workflow
functionality (e.g., the workflow
components of ERP, CRM, PDM, etc. systems).
Logiciels génériques encapsulant des
fonctionnalités workflow (ex Les composants workflow dans les ERP CRM PDM
fonctionnalités workflow (ex. Les composants workflow dans les ERP, CRM, PDM,
etc).
4. Generic software focusing on workflow
functionality (e.g., Staffware, MQSeries
W kfl
FLOW
COSA O
l BPEL Fil
t
t )
L
i i l
é é i
Architecture de WFM
Architecture de WFM
modèle de référence & exemple
modèle de référence & exemple
-Reference model of the Workflow Management Coalition
Le modèle de référence de la Wfmc
P
Process
Definition Tools
Interface 1
Ad i i
i
Interface 1
Interface 4
Interface 5
Workflow Enactment Service
Workflow API and Interchange formats
Other Workflow
S
i ( )
Administration
& Monitoring
Tools
Workflow Enactment Service
Enactment Service(s)
Workflow
Engine(s)
Workflow
Engine(s)
Interface 3
Interface 2
Workflow
Client
Applications
Invoked
Applications
What?
When?
Who?
pp
Who?
Process Definition Tools Administration & Monitoring Interface 1 Interface 4 Interface 5
Workflow Enactment Service Workflow API and Interchange formats
Other Workflow Enactment Service(s) Tools Workflow Client Interface 3 Interface 2 Workflow
Engine(s) WorkflowEngine(s)
Process Definition Tools Interface 1 Administration & Monitoring Tools Interface 4 Interface 5
Workflow Enactment Service Workflow API and Interchange formats
Other Workflow Enactment Service(s)
Interface 3 Interface 2
Workflow
Engine(s) WorkflowEngine(s)
Interface 3 Interface 2
Process Definition Tools Administration & M it i Interface 1 Interface 4 Interface 5
Workflow Enactment Service Workflow API and Interchange formats
Other Workflow Enactment Service(s) & Monitoring Tools Workflow Interface 3 Interface 2 Workflow
Engine(s) WorkflowEngine(s)
Les perspectives du Workflow
Les perspectives du Workflow
Les perspectives du Workflow
•
Process perspective
(tasks and the routing of cases)
La
•
Process perspective
(tasks and the routing of cases).
La
perspective
perspective processus
processus
(les tâches et le routage des cas de Wf).
•
Resource perspective
(workers roles 4 eyes principle etc )
•
Resource perspective
(workers, roles, 4-eyes principle, etc.).
La
perspective ressource
(les travailleurs, les rôles, le principe
des 4 yeux etc)
des 4 yeux, etc).
•
Case/data perspective
(process instances and their attributes).
La
perspective instance/
perspective instance/données
données
(les instances de processus et
La
perspective instance/
perspective instance/données
données
(les instances de processus et
leurs attributs).
•
Operation/application perspective
(forms application
•
Operation/application perspective
(forms, application
integration, etc.).
La perspective
La perspective opération
opération/application
/application
(formulaires, intégration d’application, etc).
(formulaires, intégration d application, etc).
P
i
P
P
(
d d P
i
)
Perspective Processus : Protos (extended Petri nets)
Perspective processus : COSA (Petri nets)
Perspective processus : COSA (Petri nets)
Perspective processus : Baan DEM
Perspective processus : Baan DEM
Process perspective: Event driven process chains (ARIS/SAP)
Process perspective: Event driven process chains (ARIS/SAP)
(Chaînes de processus dirigés par les événements)
Need for trip has arisen Entry of a travel request Trip is requested Approval of travel request
<sequence name="main"> <flow name="Flow_1"> <links>
(Oracle) BPEL
<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> " R i " <sequence name="sequenceReceive"><source linkName="receive-to-assess" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount') < 10000"/>
<source linkName="receive-to-approval" transitionCondition="bpws:getVariableData('inputVariable','payload','/client:LoanApprovalProcessRequest/client:amount') >= 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>py
<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>
</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"/>
<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'"/>