Process mining 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]
Dec 24, 2015
Process mining
Prof.dr.ir. Wil van der AalstEindhoven University of Technology, Department of Information Systems, P.O. Box 513, 5600 MB Eindhoven, The Netherlands
from languages
and systems to
analysis ...
Design-time (a-priori) and run-time (a-posteriori) questions
processdesign
implementation/configuration
processenactment
diagnosis
Run-time Design-time
- process mining- verification- validation- performance analysis
ProM
A-posteriori analysis: ProM
informationsystem
operationalprocess
processmodels
eventlogs
models
processdiscovery
conformancetesting
records
configures
supports/controls
(un)desiredproperties
log-based verification
refers to
Process discovery: Reversing the process
process discovery
Registerorder
Prepareshipment
Shipgoods
Receivepayment
(Re)sendbill
Contactcustomer
Archiveorder
Conformance testing
Registerorder
Prepareshipment
Shipgoods
Receivepayment
(Re)sendbill
Contactcustomer
Archiveorder
Materialis released
TO itemconfirmed
withoutdifferences
Warehouse/Stores
Transferorderitem
is confirmed
Paymentmust
be effected
PurchaseRequisition
Requirementfor materialhas arisen
Requisitionreleased
for schedulingagreement
schedule/SA release
InvoiceVerification
Purchaserequisitionreleased
for purchaseorder
Inbounddeliveryentered
Goodsreceived
Goodsreceiptposted
GoodsReceipt
Purchaseorder
created
Purchasing
Invoicereceived
Decide To Buy Computer
Choose Model
Save Money
Read Test Reviews
Check Bank Account
[reviews ok]
[bad reviews]
[enough]
Order Machine
Order Screen
Receive Machine
[desktop]
Receive Screen
Set Up And Connect
Plug In And Power On
[laptop]
Open Lid
Choose Operating System
Order Windows
Receive Windows
[windows]
Download Linux
[linux]
Install Operating System
Work Hard
[not enough]
[laptop]
[desktop]
Log based verification
formula four_eyes_principle(a1:activity,a2:activity) :=forall[p:person | (!(execute(p,a1)) \/ !(execute(p,a2)))];
ProMStaffware
InConcert
MQ Series
workflow management systems
FLOWer
Vectus
Siebel
case handling / CRM systems
SAP R/3
BaaN
Peoplesoft
ERP systems
common XML format for storing/exchanging workflow logs
input/outputCore
Plugins
ProMframework
visualization analysis
alpha algorithmgenetic
algorithmTsinghua alpha
algorithmMulti phasealgorithms
social networkminer
case dataextraction
property verifier
ExternalTools
NetMiner Viscovery ......
...
ARIS/ARIS PPM
YAWL
Caramba
CPN Tools
Outlook
XML format
ProM architecture
UserInterface
+User
Interaction
StaffwareFlowerSAPInConcert...
Heuristic NetAris Graph Format(Aris AML Format)PNMLTPN...
MiningPlugin
ImportPlugin
ExportPlugin
AnalysisPlugin
ConversionPlugin
Heuristic Net PNMLAris Graph format TPNNetMiner file Agna fileAris PPM Instances DOTComma Seperated Values …...
Log Filter
VisualisationEngine
XML Log
ResultFrame
Demo
A
E
G
invitereviewers
D
get review 2
time-out 2
collectreviews
H
decide
I
accept
J
reject
inviteadditionalreviewer
K
M
L
get review X
time-out X
C
B
get review 1
time-out 1
G
F
get review 3
time-out 3
More on ProM
Example
A
E
G
invitereviewers
D
get review 2
time-out 2
collectreviews
H
decide
I
accept
J
reject
inviteadditionalreviewer
K
M
L
get review X
time-out X
C
B
get review 1
time-out 1
G
F
get review 3
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 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 indeed
accepted.}(((accept("get review 1") /\ accept("get review
2")) /\ accept("get review 3")) -> <> ( activity == "accept" ) );
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
informationsystem
operationalprocess
processmodels
eventlogs
models
processdiscovery
conformancetesting
records
configures
supports/controls
(un)desiredproperties
log-based verification
refers to
Conformance checker (1)
Conformance checker (2)
Conformance checker (3)
Additional plug-ins
• State space analysis, invariants, EPC reduction/verification, etc.
• www.processmining.org
• www.workflowpatterns.com
• is.tm.tue.nl/research/woflan/
• www.workflowcourse.com
• BPMcenter.org
• www.yawl-system.com
useful links:
processdesign
implementation/configuration
processenactment
diagnosis