A university for the world real R © 2009, www.yawlfoundation.org Chapter 3 Advanced Synchronization Moe Wynn Wil van der Aalst Arthur ter Hofstede.

Slides:



Advertisements
Similar presentations
A university for the world real R © 2009, Appendix A The Order Fulfillment Process Model Marcello La Rosa Stephan Clemens Arthur.
Advertisements

From Local Patterns to Global Models: Towards Domain Driven Educational Process Mining Nikola Trčka Mykola Pechenizkiy.
Self-Timed Logic Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical and.
On 1-soundness and Soundness of Workflow Nets Lu Ping, Hu Hao and Lü Jian Department of Computer Science Nanjing University
Models of Concurrency Manna, Pnueli.
Process Models In this section, we focus on the control-flow perspective of processes. We assume that there is a set of activity labels.
Based on: Petri Nets and Industrial Applications: A Tutorial
Timed Automata.
A university for the world real R © 2009, Chapter 2 The Language: Rationale and Fundamentals (Part I) Nick Russell Arthur ter Hofstede.
Self-Timed Systems Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical.
Towards Workflow Pattern Support of Event-Driven Process Chains (EPC) Jan Mendling, Gustaf Neumann Dept. of IS and New Media, WU Wien, Austria Markus Nüttgens.
Process Patterns in BizAGI. Slide 2 Overview Types of events Types of gateways Design patterns list.
Merged Processes of Petri nets Victor Khomenko Joint work with Alex Kondratyev, Maciej Koutny and Walter Vogler.
IE 469 Manufacturing Systems
A university for the world real R © 2009, Chapter 15 The Business Process Execution Language Chun Ouyang Marlon Dumas Petia Wohed.
Introduction to BizAgi. Slide 2 User Interface (Summary) The user interface for BizAgi resembles Office It uses a similar ribbon The Palette contains.
On the Expressive Power of (Petri-net-based) Workflow Languages
Synthesis of Embedded Software Using Free-Choice Petri Nets.
10. Petri Nets Prof. O. Nierstrasz. Roadmap  Definition: —places, transitions, inputs, outputs —firing enabled transitions  Modelling: —concurrency.
Petri Nets Overview 1 Definition of Petri Net C = ( P, T, I, O) Places P = { p 1, p 2, p 3, …, p n } Transitions T = { t 1, t 2, t 3, …, t n } Input.
CP — Concurrent Programming 12. Petri Nets Prof. O. Nierstrasz Wintersemester 2005 / 2006.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
Specifying Workflow using CO- OPN Ang Chen SMV group 11 Mars, 2005.
A 14← department of mathematics and computer science PROSE Checking Properties of Adaptive Workflow Nets K. van Hee, I. Lomazova, O. Oanea,
A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng Paper Discussion for.
/faculteit technologie management Process Mining and Security: Detecting Anomalous Process Executions and Checking Process Conformance Wil van der Aalst.
Business Process Modeling Workflow Patterns Ang Chen July 8, 2005.
© Richard Welke 2002 CIS 4120 Fa13: Define/Innovate BP’s Richard Welke Director, CEPRIN Professor, CIS Robinson College of Business Georgia State University.
A university for the world real R © 2009, Chapter 17 Process Mining and Simulation Moe Wynn Anne Rozinat Wil van der Aalst Arthur.
PLANNING Partial order regression planning Temporal representation 1 Deductive planning in Logic Temporal representation 2.
A university for the world real R © 2009, Chapter 14 EPCs Jan Mendling.
A university for the world real R © 2009, Chapter 23 Epilogue Wil van der Aalst Michael Adams Arthur ter Hofstede Nick Russell.
A university for the world real R © 2009, Chapter 18 Process Configuration Florian Gottschalk Marcello La Rosa.
A Novel Method for Formally Detecting RFID Event Using Petri Nets SEKE 2011.
An Introduction to Petri Nets Marjan Sirjani Formal Methods Laboratory University of Tehran.
Chapter 14. Activity Modeling for Transformational Systems
Yang Liu, Jun Sun and Jin Song Dong School of Computing National University of Singapore.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Generating Correct EPCs from Configured C-EPCs* Jan MendlingVienna University of Economics Jan ReckerQueensland University of Technology Michael RosemannQueensland.
Petri nets refresher Prof.dr.ir. Wil van der Aalst
Process-oriented System Analysis Process Mining. BPM Lifecycle.
Possible Improvements For Modular Relative Time Petri Nets (or: rooting for the underdog)
Modelling by Petri nets
Decision Mining in Prom A. Rozinat and W.M.P. van der Aalst Joosung, Ko.
School of Computer Science, The University of Adelaide© The University of Adelaide, Control Data Flow Graphs An experiment using Design/CPN Sue Tyerman.
Decomposing Data-aware Conformance Checking Massimiliano de Leoni, Jorge Munoz-Gama, Josep Carmona, Wil van der Aalst PAGE 0.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
Marlon Dumas University of Tartu
CAP 4800/CAP 5805: Computer Simulation Concepts
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
1 Reasoning with Infinite stable models Piero A. Bonatti presented by Axel Polleres (IJCAI 2001,
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 3: Embedded Computing High Performance Embedded Computing Wayne Wolf.
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
High Performance Embedded Computing © 2007 Elsevier Lecture 4: Models of Computation Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte.
Diagnostic Information for Control-Flow Analysis of Workflow Graphs (aka Free-Choice Workflow Nets) Cédric Favre(1,2), Hagen Völzer(1), Peter Müller(2)
Technology of information systems Lecture 5 Process management.
Process Mining – Concepts and Algorithms Review of literature on process mining techniques for event log data.
Polynomial analysis algorithms for free-choice workflow nets
Concurrent Systems Modeling using Petri Nets
Profiling based unstructured process logs
CSS 496 Business Process Re-engineering for BS(CS)
Review: NFA Definition NFA is non-deterministic in what sense?
Concurrent Systems Modeling using Petri Nets – Part II
CAP 4800/CAP 5805: Computer Simulation Concepts
CAP 4800/CAP 5805: Computer Simulation Concepts
BPEL Eric Verbeek In these two hours (approx.) we will give an overview of BPEL, the Business Process Execution Language. We will also give some of the.
CAP 4800/CAP 5805: Computer Simulation Concepts
Petri nets refresher Prof.dr.ir. Wil van der Aalst
Petri nets.
Faulty EPCs in the SAP Reference Model
Presentation transcript:

a university for the world real R © 2009, Chapter 3 Advanced Synchronization Moe Wynn Wil van der Aalst Arthur ter Hofstede

a university for the world real R 2 © 2009, Overview Introduction Informal semantics Formal semantics Algorithm Optimisation Conclusions

a university for the world real R 3 © 2009, The Many Ways to Join When is task D enabled? Three choices: XOR, AND, and OR AND-join –Full synchronization XOR-join –No synchronization OR-join –Active paths synchronization A B D C

a university for the world real R 4 © 2009, Non-local semantics of a General OR-Join ("bus driver semantics")

a university for the world real R 5 © 2009, Advanced Synchronization: OR-join Synchronization is only performed for active threads Difficult to formally capture a desired informal semantics Difficult to determine when to enable an OR-join task Synchronizing Merge pattern in Workflow patterns

a university for the world real R 6 © 2009, Different interpretations OR Gateway in BPMN OR-join in Event-driven Process Chains (EPCs) OR-join in workflow systems e.g. InConcert, eProcess, MQ workflow Syntactic restrictions Vicious Circles Local semantics No formal semantics

a university for the world real R 7 © 2009, Informal semantics

a university for the world real R 8 © 2009, OR-join An OR-join is enabled at a marking iff –there is at least one token in one of its input conditions and –It is not possible for more tokens to arrive in other empty input conditions in the reachable markings from the current marking An OR-join task is not enabled at a marking iff –it is possible to place tokens in the unmarked input conditions of an OR-join task in the reachable markings from the current marking Enabled?

a university for the world real R 9 © 2009, Challenges How to capture the non-local semantics? Formal semantics without syntactical restrictions –Structural restrictions - InConcert, eProcess, MQ Workflow (acyclic) –True/False tokens Complications for complex workflows –Unstructured –Cancelation regions –Multiple OR-joins –Loops

a university for the world real R 10 © 2009, Unstructured workflows E should only wait for tokens in c5 and c6 (two paths) Not the three paths from the corresponding OR-split after A

a university for the world real R 11 © 2009, Cancelation regions Cancellation region of task D – c2, C, c5 M=c2+c3+c4 -C-> M’= c3+c4+c5, E is not enabled M=c3+c4+c5 -D-> c4+c6 (Remove token from c5), E is enabled How to predict that E should be enabled at c3+c4+c5 without doing a reachability analysis?

a university for the world real R 12 © 2009, Multiple OR-joins Two OR-joins E and F What happens at marking c1+c3? How should we treat E when considering when F should be enabled?

a university for the world real R 13 © 2009, Formal semantics

a university for the world real R 14 © 2009, Considerations How to deal with complex constructs supported in YAWL? –Unstructured workflows –Cancelation, hierarchy, multiple instances, loops –Multiple OR-joins Reset nets – extend Petri nets with reset arcs OR-join semantics are defined in terms of Reset nets –Support for cancelation regions

a university for the world real R 15 © 2009, Reset nets 1.Transition removes all tokens and not just one when it fires 2.Reset action can be ineffective 3.A reset arc can affect any place in the entire net Reachability notion is undecidable for reset nets with more than two reset arcs Coverability notion is decidable using backwards firing algorithm Complexity of a reset arc

a university for the world real R 16 © 2009, Backwards firing rule Backwards search techniques of Well-structured Transition Systems Input places that are not reset places –Add one token Output places that are not reset places –Remove one token Reset places that are also input places –Add one token (coverability)

a university for the world real R 17 © 2009, Semantics (Reset nets) An OR-join in a YAWL net is enabled at a marking M iff –M has tokens in one or more input conditions of the OR-join and – there is no marking in the future states of the corresponding reset net that covers M.

a university for the world real R 18 © 2009, Transformations

a university for the world real R 19 © 2009, Constructs affecting the semantics Cancelation regions (reset nets) Structured, unstructured and infinite loops (coverability) Composite tasks, Multiple instances (atomic tasks) Multiple OR-joins Ignore other OR-joins Treat them as AND-joins (Pessimistic) Treat them as XOR-joins (Optimistic)

a university for the world real R 20 © 2009, Characteristics General – no syntactical restriction – closely matches the informal semantics – behave as expected even for unsound nets Formal –defined using reset nets formalism –decided using backwards coverability algorithm Decidable –algorithm is applicable for workflows with cancelation, multiple OR-joins and loops

a university for the world real R 21 © 2009, Algorithm

a university for the world real R 22 © 2009, Algorithm 1.Transform a YAWL net into a Reset-net 2.Generate a set of possible enabling markings X 3.For each marking x in X, generate a set of backwards coverable markings X’ 4.Check if the current Marking M or a smaller marking is found in X’ 5.If so, returns False – the OR-join is not enabled at M 6.Otherwise, returns True - the OR-join is enabled at M

a university for the world real R 23 © 2009, At marking c1+c7 task G is enabled if and only if.... Example

a university for the world real R 24 © 2009, At marking c1+c7 task G is enabled if and only if it is possible to cover c6+c7! Example (Reset net)

a university for the world real R 25 © 2009, G is not enabled !

a university for the world real R 26 © 2009, Carrier Appointment Example OR-join Analysis: Create Bill of Lading c1+c2 -> False (can cover c1+c4) c2+c3 -> False (can cover c3+c4) c1+c4 -> True c3+c4 -> True

a university for the world real R 27 © 2009, Optimization

a university for the world real R 28 © 2009, Optimization –Structural restriction Remove parts of the net not associated with an OR-join Restrict the search space using structural info Apply once for each OR-join –Active projection Ignore parts of the net that cannot be marked from a given marking Restrict the search space using marking-dependent info Apply once for every marking change

a university for the world real R 29 © 2009, Applying Optimisation to Carrier Appt example

a university for the world real R 30 © 2009, Implementation in YAWL OR-join enabling algorithm –Computationally very expensive Engine –Algorithm with optimization techniques Editor –Reduction rules for OR-joins –Soundness property –OR-joins in a cycle –Unnecessary OR-joins check

a university for the world real R 31 © 2009, Conclusions Introduction –Advanced synchronization: the OR-join construct in YAWL Informal semantics –Wait to synchronize and proceed when it is not possible Formal semantics –Reset nets, Backwards coverability Algorithm –Expensive, repetitive Optimization –Structural restriction, Active projection