discovering processes from event logs

Upload: antonpgm

Post on 05-Jul-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/15/2019 Discovering Processes From Event Logs

    1/58

    rocess Mining:Discovering processes from eventlogs

    All truths are easy to understand once they are discovered;the point is to discover them.

    Galileo Galilei (1564 - 1642)

    Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology

    Department of Information and Technology P.O. Box 51 ! 5"## $B Eindhoven

    The %etherlands&.m.p.v.d.aalst'tm.t(e.nl

  • 8/15/2019 Discovering Processes From Event Logs

    2/58

    Outline• BPM research in Eindhoven• Process Mining• ProM

    – Architecture – Process mining plug-ins

    • Alpha-algorithm• Multi-phase mining• Genetic mining

    – Anal sis plug-ins – !onformance testing plug-in

    – "#" chec$er plug-in – %ocial net&or$ plug-in – !onvertors 'e-mail( %taff&are( )n!oncert( %AP( etc.*

    • !onclusion

  • 8/15/2019 Discovering Processes From Event Logs

    3/58

    BPM research in Eindhoven

  • 8/15/2019 Discovering Processes From Event Logs

    4/58

    Computer Science/information Systems in Eindhoven

    TU/e

    TM

    (Technology Management)MCS

    (Math. and Comp. Science)

    IS

    (Information Systems)CS

    (Computer Science)

    BPM

    (Business Process Management)

    Math.

    ICTA

    SE

    IS

    (Information Systems)

    BETA

  • 8/15/2019 Discovering Processes From Event Logs

    5/58

    Research within the BPM group• Wor$flo& management s stems• Process modeling 'design and redesign*

    • Process anal sis 'validation( verification( andperformance anal sis*

    • Process mining

    Often +ased on Petri nets

  • 8/15/2019 Discovering Processes From Event Logs

    6/58

    Analysis and improvement

    of resource-constrainedwor flow processesMariska Netjes

    simulationusing final

    circumstances

    real data

    simulationusing initial

    circumstances

    after WfM implementation

    before WfM implementation

    ,a-measurement

    ,+-measurement

    -measurement

    a-measurement

    +-measurement

    /-measurement

  • 8/15/2019 Discovering Processes From Event Logs

    7/58

    Product-driven process designIrene Vanderfeesten

    handle insurance claim

    registration

    chec! policy

    chec! damage

    e"aluate claim

    pay damage

    re#ect claim

    $uery policy data

    $uery payments data phone

    send fa%

    send letter

    dial

    &'

    &' send letter

    administrati"e e"aluation

    thorough e"aluation

    minimal e"aluation

    e"aluation y traffic e%pert

    e"aluation y department man

    e"aluation y fire e%pert

    chec! fire damage

    chec! other types of damage

    minimal damage chec!

    chec! car damage

    chec! car damage *++,

    chec! car damage *++-

    ma!e appointment "isual inspection

    is)part)of

    speciali*es

    try again

  • 8/15/2019 Discovering Processes From Event Logs

    8/58

    !mproving wor distri"utionmechanisms in #$M systemsMaja Pesic

  • 8/15/2019 Discovering Processes From Event Logs

    9/58

    Patterns in process-aware

    information systemsNataliya Mulyar

    pattern standard

    P/0 1M0 BPE0 0A 2 3S40 BPM0 3SCI

    Se$uence , , , , , , ,

    Parallel Split , , , , , , ,

    Synchroni5ation , , , , , , ,

    E%clusi"e Choice , , , , , , ,

    Simple Merge , , , , , , ,

    Multi Choice , - , - , - -

    Synchroni5ing Merge , - , - , - -

    Multi Merge - - - - - ,6- ,6-

    /iscriminator - - - - - - -

    Ar itrary Cycles , - - - - - -

    Implicit Termination , - , - , , ,

    MI 7ithout Synchroni5ation , , , , , , ,

    MI 7ith a Priori /esign Time

    'no7ledge, , , , , , ,

    MI 7ith a Priori 8untime 'no7ledge - , - - - - -

    MI 7ithout a Priori 8untime'no7ledge - - - - - - -

    /eferred Choice - , , , - , ,

    Interlea"ed Parallel 8outing - - ,6- - - - -

    Milestone - - - - - - -

    Cancel Acti"ity - , , , , , ,

    Cancel Case - , , , , , ,

  • 8/15/2019 Discovering Processes From Event Logs

    10/58

    %enetic process mining Ana Karla Alves de Medeiros

  • 8/15/2019 Discovering Processes From Event Logs

    11/58

    Process mining in case handlingsystemsC ristian !"nt er

  • 8/15/2019 Discovering Processes From Event Logs

    12/58

    Process mining&

    a formal approach#oud$ijn van %ongen

  • 8/15/2019 Discovering Processes From Event Logs

    13/58

    'erification of wor flowprocesses&ric Verbeek

  • 8/15/2019 Discovering Processes From Event Logs

    14/58

    (A#)& (et Another #or flow )anguage

  • 8/15/2019 Discovering Processes From Event Logs

    15/58

    • Arthur ter 0ofstede 'patterns( 1AW" def.*• Marlon 2umas 'BABE"( %O!*• "achlan Aldred '1AW" engine( comm. pats*• "indsa Bradford '1AW" designer*

    • #ore 34ellheim '1AW" logging( timers*• Gu 5edding '1AW" forms*• 6ic$ 5ussell '&or$ distri+ution7transactions*

    • Moe W nn 'verification( optimi8ation*• Michael Adams 'fle9i+ilit *

  • 8/15/2019 Discovering Processes From Event Logs

    16/58

    Process Mining

    processdesign

    implementation7configuration

    processenactment

    diagnosis

  • 8/15/2019 Discovering Processes From Event Logs

    17/58

    Motivation: 5eversing the process

    • Process mining can +e used for:

    – Process discover 'What is the process;* – 2elta anal sis 'Are &e doing &hat &as specified;* – Performance anal sis '0o& can &e improve;*

    processmining

    5egister order

    Prepareshipment

    %hipgoods

    5eceivepa ment

    '5e*send+ill

    !ontactcustomer

    Archiveorder

  • 8/15/2019 Discovering Processes From Event Logs

    18/58

    Overvie&

    *+ "asicperformancemetrics

    ,+ process modelStartRegister order

    Prepareshipment

    Ship goods

    -Re+send "ill

    Receive paymentContactcustomer

    Archive order

    End

    .+ organi ational model 0+ social networ

    1+ performancecharacteristics

    If …then …

    2+ auditing/security

    &&&.processmining.org

  • 8/15/2019 Discovering Processes From Event Logs

    19/58

    "et us focus on mining process models <

    *+ "asicperformancemetrics

    ,+ process modelStart

    Registerorder

    Prepareshipment

    Ship goods

    -Re+send "ill

    Receive paymentContactcustomer

    Archive order

    End

    .+ organi ational model 0+ social networ

    1+ performancecharacteristics

    If …then …

    2+ auditing/security

    ... and a ver simple approach: #he alpha algorithm

  • 8/15/2019 Discovering Processes From Event Logs

    20/58

    Process log

    • Minimal information inlog: case id=s and tas$id=s.

    • Additional information:event t pe( time(resources( and data.

    • )n this log there are threepossi+le se>uences: – AB!2 – A!B2 – E3

    case 1 : task A

    case 2 : task A

    case 3 : task A

    case 3 : task B

    case 1 : task B

    case 1 : task C

    case 2 : task C

    case 4 : task A

    case 2 : task B

    case 2 : task D

    case 5 : task E

    case 4 : task C

    case 1 : task D

    case 3 : task C

    case 3 : task D

    case 4 : task B

    case 5 : task F

    case 4 : task D

  • 8/15/2019 Discovering Processes From Event Logs

    21/58

    ?( →(@@( relations

    • 3irect succession : 9?iff for some case 9 isdirectl follo&ed + .

    • Causality : 9→ iff 9?and not ?9.

    • Parallel : 9@@ iff 9? and?9

    • Choice : 9 iff not 9?and not ?9.

    case 1 : task A

    case 2 : task A

    case 3 : task A

    case 3 : task B

    case 1 : task B

    case 1 : task C

    case 2 : task C

    case 4 : task A

    case 2 : task B

    case 2 : task D

    case 5 : task E

    case 4 : task C

    case 1 : task D

    case 3 : task Ccase 3 : task D

    case 4 : task B

    case 5 : task F

    case 4 : task D

    A?B

    A?!B?!B?2!?B!?2E?3

    A→B A→!B→2! →2E→3

    B@@!!@@B

  • 8/15/2019 Discovering Processes From Event Logs

    22/58

    Basic idea ',*

    9

    9→

  • 8/15/2019 Discovering Processes From Event Logs

    23/58

    Basic idea ' *

    9→ ( 9→8( and @@8

    9

    8

  • 8/15/2019 Discovering Processes From Event Logs

    24/58

    Basic idea '/*

    9→ ( 9→8( and 8

    9

    8

  • 8/15/2019 Discovering Processes From Event Logs

    25/58

    Basic idea ' *

    9→8( →8( and 9@@

    9

    8

  • 8/15/2019 Discovering Processes From Event Logs

    26/58

    Basic idea 'C*

    9→8( →8( and 9

    9

    8

  • 8/15/2019 Discovering Processes From Event Logs

    27/58

    )t is not that simple: Basic alpha algorithm

    "et W +e a &or$flo& log over #. α 'W* is defined as follo&s.,. # W D t∈ # | ∃σ ∈ W t ∈ σF(

    . # ) D t∈ # | ∃σ ∈ W t D first ' σ* F(

    /. # O D t∈ # | ∃σ ∈ W t D last ' σ* F(. W D 'A(B* | A⊆ # W ∧ B ⊆ # W ∧ ∀ a ∈ A∀+ ∈ B a →W + ∧ ∀ a,(a ∈ A a , W a ∧ ∀+,(+ ∈ B + , W + F(

    C. 1 W D 'A(B*∈ | ∀ 'A ′(B′*∈ A ⊆ A′ ∧B ⊆ B ′⇒ 'A(B* D 'A ′(B′* F(

    H. PW D p'A(B* | 'A(B* ∈ 1 W F∪ iW(oWF(I. 3 W D 'a(p 'A(B** | 'A(B* ∈ 1 W ∧ a ∈ A F ∪ 'p 'A(B*(+* | 'A(B* ∈ 1 W ∧ + ∈ B

    F ∪ 'iW(t* | t ∈ # )F ∪ 't(oW* | t ∈ # OF( and

    8. α 'W* D 'P W(# W(3 W*.The alpha algorithm has een pro"en to e correct for a large class of free-choice nets.

  • 8/15/2019 Discovering Processes From Event Logs

    28/58

    E9amplecase 1 : task A

    case 2 : task Acase 3 : task Acase 3 : task Bcase 1 : task Bcase 1 : task Ccase 2 : task C

    case 4 : task Acase 2 : task Bcase 2 : task Dcase 5 : task Ecase 4 : task Ccase 1 : task D

    case 3 : task Ccase 3 : task Dcase 4 : task Bcase 5 : task Fcase 4 : task D

    A

    B

    !

    2

    E 3

    α (3)

    3

  • 8/15/2019 Discovering Processes From Event Logs

    29/58

    !hallenges

    • 5efining e9isting algorithm for 'control-flo&7processperspective* – 'idden tasks – %uplicate tasks – Non(free(c oice constructs

    – )oops – %etecting concurrency *implicit or e+plicit, – Mining and e+ploiting time – %ealing $it noise – %ealing $it incompleteness

    • Mining other perspectives 'data( resources( roles(

  • 8/15/2019 Discovering Processes From Event Logs

    30/58

    3EM4 Alpha algorithm

    9: cases;< performers

  • 8/15/2019 Discovering Processes From Event Logs

    31/58

    ProM framewor

  • 8/15/2019 Discovering Processes From Event Logs

    32/58

    ProM Staffware

    !nConcert

    M5 Series

    $orkflo$ management systems

    $)4#er

    Jectus

    %ie+el

    case andling - C.M systems

    SAP R/.

    Baa6

    Peoplesoft

    &.P systems

    common GM" format for storing7e9changing &or$flo& logs

    input7outputCore

    Plugins

    ProM

    framework

    visuali8ation anal sis

    alpha algorithm geneticalgorithm#singhua alpha

    algorithmMulti phasealgorithms

    social net&or$miner

    case datae9traction propert verifier

    E6ternal7ools

    6etMiner Jiscover 888888

    888

  • 8/15/2019 Discovering Processes From Event Logs

    33/58

    !onverter plug-in: EMailAnal 8er

  • 8/15/2019 Discovering Processes From Event Logs

    34/58

    M" format

  • 8/15/2019 Discovering Processes From Event Logs

    35/58

    ProM architecture

  • 8/15/2019 Discovering Processes From Event Logs

    36/58

  • 8/15/2019 Discovering Processes From Event Logs

    37/58

    %tep ,: Get instances

  • 8/15/2019 Discovering Processes From Event Logs

    38/58

    %tep : Pro4ect

  • 8/15/2019 Discovering Processes From Event Logs

    39/58

    %tep /: Aggregate

  • 8/15/2019 Discovering Processes From Event Logs

    40/58

    %tep : Map onto EP!

  • 8/15/2019 Discovering Processes From Event Logs

    41/58

    %tep C: Map onto Petri net 'or other language*

  • 8/15/2019 Discovering Processes From Event Logs

    42/58

    Mining plug-in: Genetic Miner

  • 8/15/2019 Discovering Processes From Event Logs

    43/58

    Overvie& of approach

  • 8/15/2019 Discovering Processes From Event Logs

    44/58

    Anal sis plug-in: %ocial net&or$ miner

  • 8/15/2019 Discovering Processes From Event Logs

    45/58

  • 8/15/2019 Discovering Processes From Event Logs

    46/58

    !li>ues

  • 8/15/2019 Discovering Processes From Event Logs

    47/58

    %6 +ased on hand-over of &or$ metric

    density of network is 0.225

  • 8/15/2019 Discovering Processes From Event Logs

    48/58

    %6 +ased on &or$ing together 'and ego net&or$*

  • 8/15/2019 Discovering Processes From Event Logs

    49/58

    Anal sis plug-in: "#" chec$er

  • 8/15/2019 Discovering Processes From Event Logs

    50/58

  • 8/15/2019 Discovering Processes From Event Logs

    51/58

    Anal sis plug-in: !onformance chec$er

    /o they agree=

  • 8/15/2019 Discovering Processes From Event Logs

    52/58

  • 8/15/2019 Discovering Processes From Event Logs

    53/58

  • 8/15/2019 Discovering Processes From Event Logs

    54/58

    %creenshot

    (Also runs on Mac.)

  • 8/15/2019 Discovering Processes From Event Logs

    55/58

    Other anal sis plug-ins

  • 8/15/2019 Discovering Processes From Event Logs

    56/58

    More demos9

  • 8/15/2019 Discovering Processes From Event Logs

    57/58

  • 8/15/2019 Discovering Processes From Event Logs

    58/58

    More information

    http&//www8wor flowcourse8com

    http&//www8wor flowpatterns8com

    http&//www8processmining8org