The Alignment of Formal, Structured and Unstructured Process Descriptions Josep Carmona
Thomas Chatain Luis delicado Farbod Taymouri Boudewijn van Dongen Han van der Aa Lluís Padró Josep Sànchez-Ferreres Andrea Burattin
Process information is stored in various ways Process Model Work Instructions Checklist Rules & Guidelines Logs Reason: Make information available in formats suitable for various purposes and stakeholders. Problem: Synchronization issues between several representations.
Process for becoming a member?
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home.
FORMAL (AND GRAPHICAL) DESCRIPTIONS: HARD TO UNDERSTAND BY EVERYONE
EVENT LOGS: STRUCTURED FOOTPRINTS OF PROCESS EXECUTIONS (I.E., THE REALITY, DUDE!!!)
EVENT LOGS: STRUCTURED FOOTPRINTS OF PROCESS EXECUTIONS (I.E., THE REALITY, DUDE!!!) Case 1: IndividualOrFamily(V), PersonalInf(V), SendInf(V), EnterInf(Z),... Case 2: IndividualOrFamily(V), FamilyInf(V), SendInf(V), WaitCard(V), EnterInf(Z),... Case 3:...
Bank ZOO Marketing Billing ZooClub VISITOR A X B C X D E F G + I + J + K H + L M N O P
A X B C X D E F G + I + J + K + H L M N O P
A B C D E F G I J K H L M N O P
A B C D E F m i G I J K H L M N O P
A B C D E F m i G I J K H L M N O P m f
A B C D E F G I J K H L M N O P
A B C D E F Model for the Reality G I J K H L M N O P
A B C D E F Model for the Reality G I J K H L M N O P The Reality <A,D,B,G,E,N,H,I,L,J,M,P,O,K>
THE ALIGNMENT BETWEEN MODELS AND TRACES GIVEN: COMPUTE: A B C D E F G I J K H L M N O P <A,D,B,G,E,N,H,I,L,J,M,P,O,K> A A > B D D B > G G E E > H N N H > I I L L J J M M > τ > O P P O > > K K > F τ > > τ τ Trace Model
THE ALIGNMENT BETWEEN MODELS AND TRACES GIVEN: COMPUTE: A B C D E F G I J K H L M N O P <A,D,B,G,E,N,H,I,L,J,M,P,O,K> A A > B D D B > G G E E > H N N H > I I L L J J M M > τ > O P P O > > K K > F τ > > τ τ Trace Model Synchronous Moves
THE ALIGNMENT BETWEEN MODELS AND TRACES GIVEN: COMPUTE: A B C D E F G I J K H L M N O P <A,D,B,G,E,N,H,I,L,J,M,P,O,K> A A > B D D B > G G E E > H N N H > I I L L J J M M > τ > O P P O > > K K > F τ > > τ τ Trace Model Model Moves
THE ALIGNMENT BETWEEN MODELS AND TRACES GIVEN: COMPUTE: A B C D E F G I J K H L M N O P <A,D,B,G,E,N,H,I,L,J,M,P,O,K> A A > B D D B > G G E E > H N N H > I I L L J J M M > τ > O P P O > > K K > F τ > > τ τ Trace Model Log Moves
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET:
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Process Model A B C D
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Process Model A B C D <A,D,B>
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Process Model A B C D Trace Net A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: A B C D A D B Synchronous Product Net A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Model Moves A B C D A D B Synchronous Product Net A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Model Moves A B C D A D B Synchronous Product Net Log Moves A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS ARISING FROM A. ADRIANSYAH PhD. (TU/e) COSTS CAN BE ASSIGNED TO SYNCHRONOUS/ASYNCHRONOUS MOVES CURRENT IMPLEMENTATION BASED ON THE NOTION OF SYNCHRONOUS PRODUCT NET: Model Moves A B C D Synchronous Moves A D B Synchronous Product Net Log Moves A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! COST 2 A B C D COST 1 A D B COST 2 A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B A A
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B A A B >
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B A A B > D D
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS PROBLEM CASTED AS REACHABILITY WITH COSTS! A B C D A D B A D B A B D > A > D B
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS Finding an alignment for a given model and trace, for a given cost function: identify the cheapest firing sequence from m i to m f in the synchronous product net For reset/inhibitor nets this problem is UNDECIDABLE, For Petri nets this problem is EXPSPACE hard, For 1-safe nets, this problem is PSPACE hard, For free-choice petri nets this problem is NP hard, For marked graphs, this problem is POLYNOMIAL
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS Finding an alignment for a given model and trace, for a given cost function: identify the cheapest firing sequence from m i to m f in the synchronous product net For reset/inhibitor nets this problem is UNDECIDABLE, For Petri nets this problem is EXPSPACE hard, For 1-safe nets, this problem is PSPACE hard, For free-choice petri nets this problem is NP hard, For marked graphs, this problem is POLYNOMIAL WHAT TO DO!???
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS EXPLICIT EXPLORATION (A*) STRUCTURAL THEORY (MARKING EQUATION) APPROXIMATE APPROACHES SUB-OPTIMAL APPROACHES EVENT STRUCTURES (UNFOLDINGS) DECOMPOSITIONAL APPROACHES ONLINE APPROACHES
EXPLICIT EXPLORATION (A*) The search space is the statespace of the synchronous product model Each node is a combination of a state in the model and the remaining events in the trace Each arc is a move on model, move on log or a synchronous move A heuristic function estimates the remaining distance to the final node Optimality guaranteed! Memory & time consuming!
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS EXPLICIT EXPLORATION (A*) STRUCTURAL THEORY (MARKING EQUATION) APPROXIMATE APPROACHES SUB-OPTIMAL APPROACHES EVENT STRUCTURES (UNFOLDINGS) DECOMPOSITIONAL APPROACHES ONLINE APPROACHES
STRUCTURAL THEORY OVER THE MARKING EQUATION For any given Petri net with initial marking m i, firing sequence s leading to final marking m f, holds: m i + N x = m f (marking equation) with x the Parikh vector of s Minimizing c(x) leads to an underestimate for c(s), and hence an underestimate for the cheapest path from m i to m f. x does not necessarily correspond to a realizable firing sequence For some class (e.g., free-choice nets): if x is an integer solution to the marking equation for m i and m f, then there exists a firing sequence s from m i to m f.
STRUCTURAL THEORY OVER THE MARKING EQUATION For any given Petri net with initial marking m i, firing sequence s leading to final marking m f, holds: m i + N x = m f (marking equation) with x the Parikh vector of s Minimizing c(x) leads to an underestimate for c(s), and hence an underestimate for the cheapest path from m i to m f. x does not necessarily correspond to a realizable firing sequence For some class (e.g., free-choice nets): if x is an integer solution to the marking equation for m i and m f, then there exists a firing sequence s from m i to m f. Marking equation used to prune the search space in A* What about to provide alignments?
APPROXIMATE ALIGNMENTS Computing alignments more efficiently Computing alignments at different level of granularities
APPROXIMATE ALIGNMENTS Computing alignments more efficiently Computing alignments at different level of granularities Process Model Trace METHOD Approximate Alignment
APPROXIMATE ALIGNMENTS Computing alignments more efficiently Computing alignments at different level of granularities Process Model Trace METHOD Approximate Alignment Finest Level (Traditional Alignment) α 3 = a b f c a b > c f >
APPROXIMATE ALIGNMENTS Computing alignments more efficiently Computing alignments at different level of granularities Process Model Trace METHOD Most Coarse Level α 1 = {a, b, f, c} {a, f, b, c} Approximate Alignment α 2 = a a b b {f, c} {c, f} Finest Level (Traditional Alignment) α 3 = a b f c a b > c f >
APPROXIMATE ALIGNMENTS Computing alignments more efficiently Computing alignments at different level of granularities Process Model Trace METHOD Most Coarse Level α 1 = {a, b, f, c} {a, f, b, c} Approximate Alignment α 2 = a a b b {f, c} {c, f} Memory Usage Finest Level (Traditional Alignment) α 3 = a b f c a b > c f > Execution Time
σ Parikh Similarity σ ILP Ordering α {σ σ }
σ Parikh Similarity σ ILP Ordering α {σ σ } APPROXIMATE ALIGNMENTS Parikh Similarity: Looking for a Parikh Vector that maximizes similarity to the Parikh representation of σ ILP Ordering: Computing an Approximate Alignment Based on a User-Defined Granularity Based on the marking equation!
PARIKH SIMILARITY ^ Let J = T supp σ : Minimize Σ t J X s t Σ t J X[t] Subject to: m f = m i + NX ^ t J: σ t = X t + X s [t] X, X s 0 ^ For a i : If X i < σ(a i ) Reset a i σ Parikh Similarity σ ILP Ordering α {σ σ }
PARIKH SIMILARITY ^ Let J = T supp σ : Minimize Σ t J X s t Σ t J X[t] Subject to: m f = m i + NX ^ t J: σ t = X t + X s [t] X, X s 0 ^ For a i : If X i < σ(a i ) Reset a i in σ σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 First step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 First step λ 1 th step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 Marking Equation: m λ = m λ 1 + NX λ m λ 0, X λ 0 First step λ 1 th step Final step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 Marking Equation: m λ = m λ 1 + NX λ m λ 0, X λ 0 Step Granularity: Σ t X1 X 1 t + X 1 s t η Σ t Xλ 1 Step Granularity : s X λ 1 t + X λ 1 t η Step Granularity: m λ end = 1 First step λ 1 th step Final step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Parikh Equality λ t J:Σ i=1 X i t + X s i t σ ^ (t) Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 Marking Equation: m λ = m λ 1 + NX λ m λ 0, X λ 0 Step Granularity: Σ t X1 X 1 t + X 1 s t η Σ t Xλ 1 Step Granularity : s X λ 1 t + X λ 1 t η Step Granularity: m λ end = 1 First step λ 1 th step Final step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Parikh Equality λ t J:Σ i=1 X i t + X s i t σ ^ (t) Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 Marking Equation: m λ = m λ 1 + NX λ m λ 0, X λ 0 Step Granularity: Σ t X1 X 1 t + X 1 s t η Σ t Xλ 1 Step Granularity : s X λ 1 t + X λ 1 t η Step Granularity: m λ end = 1 Mimic: ^ t J:X 1 t σ 1 [t] Mimic: ^ t J: X λ 1 t σ λ 1 [t] Mimic: ^ t J: X λ t σ λ [t] First step λ 1 th step Final step σ Parikh Similarity σ ILP Ordering α {σ σ }
ILP ORDERING ^ Let J = T supp(σ ) Objective Function: Minimize λ Σ i=1 c X i,xs i Marking Equation: m 1 = m 0 + NX 1 m 1 0, X 1 0 Parikh Equality λ t J:Σ i=1 X i t + X s i t σ ^ (t) Marking Equation: m λ 1 = m λ 2 + NX λ 1 m λ 1 0, X λ 1 0 Marking Equation: m λ = m λ 1 + NX λ m λ 0, X λ 0 Step Granularity: Σ t X1 X 1 t + X 1 s t η Σ t Xλ 1 Step Granularity : s X λ 1 t + X λ 1 t η Step Granularity: m λ end = 1 Mimic: ^ t J:X 1 t σ 1 [t] Mimic: ^ t J: X λ 1 t σ λ 1 [t] Mimic: ^ t J: X λ t σ λ [t] First step λ 1 th step Final step σ Parikh Similarity σ ILP Ordering α {σ σ }
RECURSIVE ILP ORDERING σ Recursive Algorithm σ Parikh Similarity σ ILP Ordering α {σ σ }
RECURSIVE ILP ORDERING σ Recursive Algorithm ILP Ordering ILP Ordering ILP Ordering σ Parikh Similarity σ ILP Ordering α {σ σ }
RECURSIVE ILP ORDERING σ Recursive Algorithm ILP Ordering ILP Ordering ILP Ordering α 1 α λ 1 α λ α = α 1 α 2 α λ 1 α λ σ Parikh Similarity σ ILP Ordering α {σ σ }
RECURSIVE ILP ORDERING σ Recursive Algorithm ILP Ordering ILP Ordering ILP Ordering Number of variables: T + J + P ( σ η ) α 1 α λ 1 α λ α = α 1 α 2 α λ 1 α λ σ Parikh Similarity σ ILP Ordering α {σ σ }
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS EXPLICIT EXPLORATION (A*) STRUCTURAL THEORY (MARKING EQUATION) APPROXIMATE APPROACHES SUB-OPTIMAL APPROACHES K OF X PREFIX-ALIGNMENT INDICATION-BASED REDUCTION EVENT STRUCTURES (UNFOLDINGS) DECOMPOSITIONAL APPROACHES ONLINE APPROACHES
The firing rule of Petri nets can also be translated in this form, namely, if t is enabled in marking m: m + N - 1 t 0 Where N - is the consumption matrix of the Petri net and a 1 t vector with value 1 for transition t and 0 otherwise. This can be combined into a larger ILP problem for k of x prefix alignments.
We can construct an ILP, that guarantees that: The first x transitions can be executed in that order (using the firing rule equations) The remainder of the trace is a solution to the marking equation (and hence for free choice nets, the final marking is reachable from the marking reached after firing the first x transitions) k out of the first x transitions correspond to an event (log-move or sync-move) The cost function is minimal. Then iteratively, we keep the x transitions and solve the problem for the remaining elements of the trace.
ALIGNMENTS BETWEEN EVENT LOGS AND PROCESS MODELS EXPLICIT EXPLORATION (A*) STRUCTURAL THEORY (MARKING EQUATION) APPROXIMATE APPROACHES SUB-OPTIMAL APPROACHES K OF X PREFIX-ALIGNMENT INDICATION-BASED REDUCTION EVENT STRUCTURES (UNFOLDINGS) DECOMPOSITIONAL APPROACHES ONLINE APPROACHES
INDICATION-BASED REDUCTION APPROACH N Model Reduction N r Computing Macro- Alignment α r Alignment Expansion α σ Log Reduction σ r Model reduction inspired in the Reveals Relation (by Stefan Haar) Benefit from well-structuredness to extract Single-Entry Single-Exit components Localy optimal (applying [Needleman, S., Wunsch] DP technique)
t 6 t 19 t 2 t 7 t 16 t 25 t 22 t 20 t 8 t 1 t 5 t 15 t 26 t 10 t 3 t 17 t 21 t 24 t 11 t 4 t 12 t 13 t 18 t 14
t 6 t 19 t 2 t 7 t 16 t 25 t 22 t 20 t 8 t 1 t 5 t 15 t 26 t 10 t 3 t 17 t 21 t 24 t 11 t 4 t 12 t 13 t 18 t 14
t 6 t 19 t 2 t 7 t 16 t 25 t 22 t 20 t 8 t 1 t 5 t 15 t 26 t 10 t 3 t 17 t 21 t 24 t 11 t 4 t 12 t 13 t 18 t 14
t 2 t 6, t 7, t 8 {t 16 } t 19 t a 16 t 25 t 22 t 20 t 1 t 5 t 15 t 26 t 10 t 3 t 17 t 21 t 24 t 11 t 4 t 12 t 13 t 18 t 14
t 2 t 6, t 7, t 8 {t 16 } t 25 t 19, t 20 {t 22 } t a 16 t a 22 t 1 t 5 t 15 t 26 t 10 t 3 t 17 t 21 t 24 t 11 t 12 t 4 t 13 t 18 t 14
t 2 t 6, t 7, t 8 {t 16 } t 25 t 19, t 20 {t 22 } t a 16 t a 22 t 1 t 10 t 15 {t 5 } t 5 a t 26 t 3 t 17 t 21 t 24 t 11 t 12 t 4 t 13 t 18 t 14
t 2 t 6, t 7, t 8 {t 16 } t 25 t 19, t 20 {t 22 } t a a 16 t 22 t 1 t 15 {t 5 } t 5 a t 26 a t 17 t 3 t 10, t 11 {t 17 } t 21 t 24 t 12 t 4 t 13 t 18 t 14
t 2 t 6, t 7, t 8 {t 16 } t 25 t 19, t 20 {t 22 } a t 16 t a 22 t 1 t 15 {t 5 } t 5 a t 26 a t 17 t 3 t 10, t 11 {t 17 } t 21 t 24 t 12 t 4 t 13 t 18 t 14
a t 16 t a 22 t 1 t 5 a t 26 a t 17 t 21 t 24 t 12 t 4 t 13 t 18 t 14
a t 16 t a 22 t 1 t 5 a t 26 a t 17 t 21 t 24 t 12 t 4 t 13 t 18 t 14
a t 16 t a 22 t 1 t 5 a t 26 a t 17 t 21 t 24 t 12 t 4 t 13 t 18 t 14
t aa 22 t 1 t 5 a t 26 a t 17 t 12 t 4 t 13 t 14 t 18 Saturated!
Model Indication Model Indication Local Alignments by Dynamic Programming [Needleman & Wunsch, 1970] Observed Indication of t a 17 = t 3 t 11, t 10 t 3 t 11 and {t 3 }{t 10 } Model Indication of t a 17 = t 3 t 11, t 10 t 17 t 3 t 11 t 17 and {t 3 }{t 10 }{t 17 } Observed Indication Observed Indication t 3 t 11 t 3 t 10 0-1 -2 0-1 -2 t 3-1 0-1 t 3-1 0-1 t 11-2 -1 0 t 10-2 -1 0 t 17-3 -2-1 Optimal score t 17-3 -2-1 Optimal score (t 3,t 3 )(t 11,t 11 )(, t 17 ) (t 3, t 3 )(t 10,t 10 )(, t 17 )
Aligning Observed Indication to Model indication Observed Indication of t a 17 = t 3 t 11, t 10 t 3 t 11 and {t 3 }{t 10 } Model Indication of t a 17 = t 3 t 11, t 10 t 17 t 3 t 11 t 17 and {t 3 }{t 10 }{t 17 } Optimal alignment for t a 17 = (t 3, t 3 ){ t 11, t 11, t 10, t 10 }(, t 17 ) α r = t 1 t 1 t 5 a > ta 17 ta 17 t 21 t 21 > t 24 > t 5 a ta 16 ta 16 a t 22 a t 22 t 26 t 26 t 1 t 5 α = t 1 > t 3 t 11 t 10 > t 21 > > > t 6 t 2 t 3 t 11 t 10 t 17 t 21 t 24 t 5 > t 2 t 15 t 7 > > t 16 t 25 t 19 t 20 > t 7 t 6 t 8 t 16 t 25 t 19 t 20 t 25 t 26 t 26
RECAP ON ELvsPM Challenging problem Many perspectives can be considered (the talk has only presented few...) Structural Theory clearly has a role Topics that I have not touched Anti-alignments Multi-alignments Decomposed approaches Partial-orders Online approaches
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home.
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home. + control-flow
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home. + actions
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home. + roles & units
TEXTUAL DESCRIPTIONS: THEY REPRESENT UNSTRUCTURED SOURCE OF PROCESS INFORMATION. When a visitor wants to become a member of Barcelona's ZooClub, the following steps must be taken. First of all, the customer must decide whether he wants an individual or family membership. If he wants an individual membership, he must prepare his personal information. If he wants a family membership instead, he should prepare the information for its spouse and spawn as well. The customer must then give this information to the ZooClub department. The ZooClub department introduces the visitor's personal data into the system and takes the payment request to the Billing department. The ZooClub department also forwards the visitor's information to the marketing department. The billing department sends the payment request to the bank. The bank processes the payment information and, if everything is correct, charges the payment into user's account. Once the payment is confirmed, the ZooClub department can print the card and deliver it to the visitor. In the meantime, the Marketing department makes a request to mail the Zoo Club's magazine to the visitor's home. Once the visitor receives the card, he can go home. + coreferences/anaphora
NATURAL LANGUAGE PROCESSING (NLP) Performed NLP Steps: PoS Tagging & Lemmatization Sense Disambiguation Semantic Role Labelling Coreference Resolution Freeling: An Open-Source suite of language analyzers [1] Padró, L., Stanilovsky, E.: Freeling 3.0: Towards wider multilinguality. In: Proceedings of the Eighth International Conference on Language Resources and Evaluation, LREC, Istanbul, Turkey (May 2012) 2473 2479
Analyzer Textual Description Sentence 1: _ Tokens: when, user, wants, become _ Sematic Roles: _ Agent: user _ Action: take _ Patient: following, step Sentence 2: BPMN Process Model Task Label 1: _ Tokens: decide, individual, family, ticket _ Sematic Roles: _ Agent: client _ Action: decide _ Patient: individual, family, ticket Task Label 2: Filtered Model
FEATURE EXTRACTION (TEXT) "If he wants an individual membership, he must prepare his personal information." Contains the noun "customer" Contains the adjective "individual" Contains the action "prepare" The agent of verb "prepare" is "customer" The object of verb "prepare" is "information" Contains the synset 09984659-n (client) The agent of verb "want" is "customer" Follows a conditional with: "individual", "membership"
FEATURE EXTRACTION (MODEL) Contains the action "prepare" Contains the adjective "personal" Contains the noun "information" The agent of verb "prepare" is "user" The object of verb "prepare" is "information" Contains the synset 09984659-n (client) Follows a conditional with "family", "membership"
Contains the noun "customer" Contains the adjective "individual" Contains the action "prepare" The agent of verb "prepare" is "customer" The object of verb "prepare" is "information" Contains the synset 09984659-n (client) The agent of verb "want" is "customer" Weighted Overlapping Index Contains the action "prepare" The agent of verb "prepare" is "customer" Contains the adjective "personal" Contains the noun "information Similarity = 0.938
Weighted Overlapping Index Contains the action "prepare" The agent of verb "prepare" is "customer" Contains the noun "information" Contains the action "prepare" The agent of verb "prepare" is "customer" Contains the adjective "personal" Contains the noun "information" 4.039 6.324 1.022 4.039 6.324 0.752 1.022 = 0.938
Weighted Overlapping Index Contains the action "prepare" The agent of verb "prepare" is "customer" Contains the noun "information" Contains the action "prepare" The agent of verb "prepare" is "customer" Contains the adjective "personal" Contains the noun "information" 4.039 6.324 1.022 4.039 6.324 0.752 1.022 = 0.938
ORDERING COMPUTATION DETERMINE THE ORDER RELATIONS OF TASKS AND SENTENCES Strict order Reverse order FOR THE MODEL, WE USE BEHAVIORAL PROFILES (Weidlich, 2010) FOR THE TEXT, SENTENCE LINEARITY IS ASSUMED Exclusivity # Parallelism
OPTIMIZATION PROBLEM (ILP) Model Order Matrix T1 T2 T3 T4 T1 # T2 # T3 # T4 # Similarity Matrix T1 T2 T3 T4 S1 0.78 0.33 0.29 0.50 S2 0.33 0.94 0.01 0.39 S3 0.29 0.01 0.63 0.12 S4 0.50 0.39 0.12 0.85 Text Order Matrix S1 S2 S3 S4 S1 # S2 # S3 # S4 #
NLP4BPM.CS.UPC.EDU
RECAP ON TDvsPM NLP widens the scope of Processes and Process Models Again, a challenging problem (specially at the NLP part) Nice topics for PhD Thesis! From Text to Models (going beyond [Friedrich et al.]) Collaborative/Cognitive BPM...
TOOL SUPPORT (ALL EDGES IN THE TRIANGLE) ELvsPM: ProM (http://www.promtools.org/) https://github.com/farbodtaymouri/recursive-ilp Lana LABS (Commercial) TDvsPM, ELvsTD: http://nlp4bpm.cs.upc.edu/
The Alignment of Formal, Structured and Unstructured Process Descriptions Josep Carmona