An Alternative Way of Analyzing Workflow Graphs

Download Report

Transcript An Alternative Way of Analyzing Workflow Graphs

Process Mining
from discovery to checking
Prof.dr.ir. Wil van der Aalst
Eindhoven University of Technology, Department of Information
Systems, P.O. Box 513, 5600 MB Eindhoven, The Netherlands
[email protected]
Outline
•
•
•
•
BPM lifecycle
Process mining overview
ProM framework
Example
– discovery algorithms
– LTL
• Conclusion
Thanks to Ton Weijters, Boudewijn van Dongen, Ana Karla Alves de Medeiros, Minseok Song, Laura Maruster,
Eric Verbeek, Monique Jansen-Vullers, Hajo Reijers, Michael Rosemann, Anne Rozinat, Christian Guenther Peter
van den Brand, Huub de Beer, Andrey Nikolov, et al. for their on-going work on process mining.
The BPM life-cycle
diagnosis
process
enactment
process
design
implementation/
configuration
1993
diagnosis
process
enactment
process
design
implementation/
configuration
1998
diagnosis
process
enactment
process
design
implementation/
configuration
2003
diagnosis
process
enactment
process
design
implementation/
configuration
2008 ???
diagnosis
process
enactment
process
design
implementation/
configuration
Design-time (a-priori) and run-time (a-posteriori) questions
Run-time
Design-time
diagnosis
process
enactment
- process mining
process
design
implementation/
configuration
- verification
- validation
- performance
analysis
focus of this paper
supports/
controls
information
system
operational
process
records
refers to
models
configures
process
discovery
(un)desired
properties
process
models
conformance
testing
log-based verification
event
logs
Process discovery: Reversing the process
Prepare
shipment
Register
order
Ship
goods
(Re)send
bill
Archive
order
Receive
payment
process
discovery
Contact
customer
Conformance testing
Prepare
shipment
Register
order
Ship
goods
(Re)send
bill
Archive
order
Receive
payment
Requirement
for material
has arisen
Purchase
Requisition
Contact
customer
Requisition
released
for scheduling
agreement
schedule/SA release
Purchase
requisition
released
for purchase
order
Purchasing
Decide To Buy Computer
Order Machine
Goods
received
Choose Model
[desktop]
[bad reviews]
Inbound
delivery
entered
Purchase
order
created
Material
is released
Invoice
received
Save Money
Read Test Reviews
Order Screen
[laptop]
[enough]
Receive Machine
Choose Operating System
Receive Screen
[reviews ok]
[laptop]
[desktop]
[windows]
Order Windows
Goods
Receipt
[linux]
Goods
receipt
posted
Download Linux
Work Hard
Receive Windows
Check Bank Account
Set Up And Connect
Open Lid
[not enough]
Warehouse/
Stores
Plug In And Power On
Install Operating System
TO item
confirmed
without
differences
Transfer
order
item
is confirmed
Invoice
Verification
Payment
must
be effected
Log based verification
formula
four_eyes_principle
(a1:activity,a2:activity)
:=
forall[p:person |
(!(execute(p,a1)) \/
!(execute(p,a2)))];
ProM framework
workflow management systems
ProM
CPN Tools
ARIS/ARIS PPM
YAWL
Caramba
ProM
framework
case handling / CRM systems
ERP systems
Staffware
FLOWer
SAP R/3
InConcert
Vectus
BaaN
MQ Series
Siebel
Peoplesoft
common XML format for storing/
exchanging workflow logs
Core
Plugins
External
Tools
...
input/output
visualization
analysis
alpha algorithm
genetic
algorithm
Tsinghua alpha
algorithm
Multi phase
algorithms
social network
miner
case data
extraction
property verifier
...
NetMiner
Viscovery
...
Converter plug-in: EMailAnalyzer
XML format
ProM architecture
Staffware
Flower
SAP
InConcert
...
XML Log
Heuristic Net
Aris Graph Format
(Aris AML Format)
PNML
TPN
...
Log Filter
Heuristic Net
Aris Graph format
NetMiner file
Aris PPM Instances
Comma Seperated Values
...
Import
Plugin
PNML
TPN
Agna file
DOT
…
Export
Plugin
Mining
Plugin
User
Interface
+
User
Interaction
Result
Frame
Visualisation
Engine
Conversion
Plugin
Analysis
Plugin
Example
B
L
get review 1
get review X
C
M
time-out 1
time-out X
D
A
invite
reviewers
get review 2
E
G
collect
reviews
K
invite
additional
reviewer
H
I
decide
accept
time-out 2
J
F
reject
get review 3
G
time-out 3
Snapshot of log (100 cases)
Alpha plug-in (1)
Alpha plug-in (2)
Multi-phase mining plug-in
Genetic miner (1)
Genetic miner (2)
Social network mining plug-in
SNA with Netminer
betweenness metric points
out that the editor and the
two editorial assistants are
most central
Netminer (2)
LTL checker: Input
Question 1
formula
accept_or_reject_but_not_both() := {}
(<>(activity == "accept") <->
!(<>(activity == "reject")));
Question 2
formula action_follows_decision() :=
{Is every decision followed by one of the three
possible actions? }
[]( (activity == "decide" -> _O( ((activity ==
"accept" \/ activity == "reject") \/ activity ==
"invite additional reviewer") )));
Question 3
subformula execute( p : person, a : activity ) :=
{Is a specfic activity executed by a specific person?}
<> ( (activity == a /\ person == p ) ) ;
formula not_the_same_reviewer() :=
{Is every reviewer unique?}
forall[p:person |
(((!(execute(p,"get review 1")) \/ !(execute(p,"get review 2"))) /\
(!(execute(p,"get review 1")) \/ !(execute(p,"get review 3")))) /\
(!(execute(p,"get review 2")) \/ !(execute(p,"get review 3")))) ];
Question 4
subformula accept(a : activity ) :=
{Is the result a some activity an accept?}
<> ( (activity == a /\ ate.result == "accept" ) ) ;
formula dont_reject_paper_unjustified() :=
{Are all papers with strong support
accept indeed
accepted.}
(((accept("get review 1") /\ accept("get review
2")) /\ accept("get review 3")) -> <> ( activity ==
"accept" ) );
reject
Question 5
formula four_eyes_principle(a1:activity,a2:activity) :=
{
<h2>The four-eyes-principle</h2>
<p> Check whether two activities are never executed by the
same person for a given case.</p>
<p> Arguments:<br>
<ul>
<li><b>a1</b> of type string denoting an activity</li>
<li><b>a2</b> of type string denoting an activity</li>
</ul>
</p>
}
forall[p:person |(!(execute(p,a1)) \/ !(execute(p,a2)))];
A related plug-in: Conformance checker
supports/
controls
information
system
operational
process
records
refers to
models
configures
process
discovery
(un)desired
properties
process
models
conformance
testing
log-based verification
event
logs
Conformance checker (1)
Conformance checker (2)
Conformance checker (3)
Additional plug-ins
• State space analysis, invariants,
EPC reduction/verification, etc.
Conclusion
• Process mining is an exciting topic both from a
practical and scientific point of view.
• Join us by:
– Applying this in different setting.
– Contributing logs, adapters, and plug-ins.
useful links:
• www.processmining.org • www.workflowcourse.com
• www.workflowpatterns.com • www.citi.qut.edu.au/babel/
• BPMcenter.org
• www.yawl-system.com