Behavioral Comparison of Process Models Based on Canonically Reduced Event Structures Abel Armas-Cervantes Paolo Baldan Marlon Dumas Luciano García-Bañuelos BPM
Business process models BPM Start event Activity XOR gateway AND gateway End event Run
Business process models. Runs BPM
Spot the difference! BPM Not structural differences
Spot the difference! BPM It is possible to execute task Monitor delivery right after Handle bank transfer in model 1 but not in model 2.
Desiderata Diagnostics: Differences explained with intuitive statements. E.g., – “It is possible to execute task A after B in model 1 but not in model 2.” Semantics: Well-accepted notion of equivalence – Our choice: Configuration equivalence (True-concurrency spectrum) BPM
Event structures Event structures (ES) as the behavioral representations – Events: occurrences of actions – Relations over the events: behavior dependencies observed between pairs of events Prime event structures (PES) – Three relations: conflict, causality and concurrency
Example PES A B C A B C D E F G F D D E E G A BC DE G FD G E A BC DE G FD G E C G E
Prime vs. Asymmetric event structures BPM Prime Event Structure (PES)Asymmetric Event Structure (AES) Reduction* *Reduction of event structures under hp-bisimulation
Another example
Reduction and canonicity Fist contribution: Deterministic order defining a canonical representation Elements: – Lexicographic order of event labels – Size of the set of events to be merged –... not enough! BPM Not canonical
Deterministic folding Compute combinable set of events Folding order 1.Lexicographic order on the event’s label 2.Size of the set of events to merge 3.Lexicographic order w.r.t. the canonical labels BPM
Cyclic process models = infinite number of events
Our unfolding Second contribution: Unfolding technique to capture all causal dependencies between tasks – We can distinguish repetitive behavior from non-repetitive BPM
Comparator BPM Comparator AES2AES1 Finite representation Canonical Reduction Finite representation Canonical Reduction
Comparator(2) Error correcting graph matching techniques for finding similar behavior. – Isomorphism would imply equivalence BPM
Comparator(3) Mismatching relations between matched events – In model 2, there is a state after the execution of task c where d and c are mutually exclusive; whereas in model 1, there is a state after the execution of b where c can occur before d, or c can be skipped Mismatching repetitive behavior – Task b may occur 0 or more times in model 2; whereas in model 1, it occurs at most once Unmatched events – There is an additional occurrence of task b after c in model 2 BPM
Summary Technique for a behavioral comparison of process models using AES – Canonical folding of AES – Finite representation using Petri net unfoldings Characterization of cyclic behavior according to task repetitions – Propose a comparison technique of AES BPM
BPM
Canonical graph label Compute the adjacency matrix of the graph and all its possible permutations Select the largest lexicographical exemplar of the string representation of the permutations – Nauty, a tool to compute canonical graph labeling BPM abc a010 b001 c … bca b010 c000 a
Complete prefix unfolding Truncating techniques based on markings – McMillan and Esparza et al They do not capture all possible causal dependencies BPM
Current limitations Silent transitions can lead to different prefix unfoldings, even though the processes are equivalent BPM