We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byAgustin Keech
Modified about 1 year ago
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
Compiler Construction A Compulsory Module for Students in Computer Science Department Faculty of IT / Al – Al Bayt University Second Semester 2010/2011.
Artificial Intelligence 4. Knowledge Representation Course V231 Department of Computing Imperial College, London Jeremy Gow.
Softrare Reliability Methods Prof. Doron A. Peled Bar Ilan University, Israel And Univeristy of warwick, UK Version 2008.
Process Modelling and Standardization Jan Mendling Dept. of IS and New Media, WU Vienna, Austria
Copyright 1999, 2003 G.v. Bochmann CN-FM ch.2 1 Course Notes on Formal Methods for the Development of Distributed Real-Time Applications Gregor v. Bochmann.
Of An Expert System. Introduction What is AI? Intelligent in Human & Machine? What is Expert System? How are Expert System used? Elements of ES Who are.
Agent Based Software Development Michael Luck, Ronald Ashri and Mark dInverno Chapter 4: Methodologies and Modeling Languages.
Quicksort Introduction to Algorithms Quicksort CSE 680 Prof. Roger Crawfis.
Timed Automata Rajeev Alur University of Pennsylvania SFM-RT, Bertinoro, Sept 2004.
Algorithm Analysis. Assignment #8 Submit in PDF format ONLY !!! Assignment will NOT be accepted in format other than pdf. See and blackboard announcements.
Parsing 4 Dr William Harrison Fall 2008 CS4430 – Compilers I.
Data Mining for Web Personalization Presented by the Highflyers group.
Model Checking and Testing combined Doron Peled, University of Warwick.
Dive into WebRatio 6 BPM Milano, 09/11/2013 WebRatio Customer Services.
Automata Theory November 2002 Introduction & NFAPart 1:
Chapter 14 Query Optimization. ©Silberschatz, Korth and Sudarshan14.2Database System Concepts 3 rd Edition Chapter 14: Query Optimization Introduction.
Modeling Software Systems Lecture 2 Book: Chapter 4.
Reinforcement Learning Yijue Hou. What is learning? Learning takes place as a result of interaction between an agent and the world, the idea behind learning.
Knowledge-based systems Rozália Lakner University of Veszprém Department of Computer Science.
Revised By: Ghulam Irtaza Sheikh Aman Ullah Khan A.I. IS THE FUTURE OF COMPUTING!
An Introduction to Game Theory Part V: Extensive Games with Perfect Information Bernhard Nebel.
File Concept A file is a named collection of related information that is recorded on secondary storage. A file has a define structure, which we must know.
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
1 Term 2, 2007, Lectures 2/3, NormalisationD. Tidhar (based on M. Ursu) Department of Computing, Goldsmiths College Normalisation 5.
A Polynomial Translation of -Calculus (FCP) to Safe Petri Nets Roland Meyer 1, Victor Khomenko 2, and Reiner Hüchting 1 1 Department of Computing Science,
Chapter 17: Recovery System Failure Classification Storage Structure Recovery and Atomicity Log-Based Recovery Shadow Paging Recovery With Concurrent Transactions.
Agent Based Software Development Michael Luck, Ronald Ashri and Mark dInverno.
Analysis of Petri Net Models of Business Process Workflows Student Name: Ashjan Basri Student ID: Supervised by Prof. Mehmet A. Orgun.
The Petri Net Method By Dr Chris Ling School of Computer Science & Software Engineering Monash University
An Introduction to Object Modeling An Introduction to Object Modeling The approach of using object modeling during systems analysis and design is called.
© 2016 SlidePlayer.com Inc. All rights reserved.