Top Banner
© 2010 IBM Corporation A New Semantics for the Inclusive Converging Gateway in Safe Processes IBM Research – Zurich Process Management Technologies Hagen Völzer IBM Research -- Zurich (aka Or-join)
27

IBM Research – Zurich Process Management Technologies A ...

Mar 13, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation

A New Semantics for the Inclusive Converging Gateway in Safe Processes

IBM Research – ZurichProcess Management Technologies

Hagen Völzer IBM Research -- Zurich

(aka Or-join)

Page 2: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation2 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Or-Join Semantics Problem

� The BPMN (Business Process Model and Notation) standard contains the Or-join gateway

� Precise semantics of the Or-join and its formalization is an open issue

� Semantics needs to define whether an Or-join is enabled in an given state of a BPMN diagram

Or-join

Tokens define the state

Page 3: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation3 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Why is this problem interesting?

� Communicating a process to a human– Modeling for documentation– Formalized semantics is mildly interesting (e.g. for teaching the language)

� Communicating a process to a machine– Modeling for automated analysis– Modeling for automated execution– Formalization of semantics is indispensable

� BPMN 2.0 standardization– Unified language for documentation and execution– OMG required formalized execution semantics

Page 4: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation4 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Three Problems in One

� Semantics problem: We don’t understand the intended meaning, i.e., behavior, for some diagrams. What is a reasonable behavior for them? (Understanding)

� Formalization problem: We know the meaning, we want to formalize it. (Formal Definition)

� Execution problem: We have a formalization, we want to execute it efficiently (Runtime Algorithm)

� Focus in the literature is on formalization and execution

Page 5: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation5 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Contribution

� Derive a new semantics from discussing the intended meaning of Or-joins

� Formalization is straight-forward

� Propose linear-time execution algorithm for new semantics

Page 6: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation6 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Outline

� Acyclic diagrams– Semantics through use cases– Formalization problem

� Cyclic diagrams

Page 7: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation7 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Or-Join for Closing Or-Splits (1/2)

� Or-split provides conditional concurrent branching

� Or-join should synchronize the active branches (i.e. tokens produced by split)

� The semantics is non-local– Enabling depends on tokens that are not at the join

Page 8: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation8 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Or-Join for Closing Or-Splits (2/2)

� Splits and joins may not be exactly paired

� Synchronize tokens that were produced “upstream” of the Or-join

Page 9: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation9 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Or-Join for Closing a Combination of And- and Xor-Splits

� Similar to Or-splits– Synchronize tokens that were produced “upstream”

� And- or Xor-join cannot be used directly– Otherwise we get deadlock or lack of synchronization

Page 10: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation10 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Soundness

� Deadlock = some tokens are blocked; not enough tokens for execution– Subsequent task does not get executed

� Lack of synchronization = concurrent tokens don’t get synchronized, multiple tokens on a single edge

– Subsequent task get executed twice (or more)

� Soundness = no deadlock and no lack of synchronization

Deadlock Lack of synchronization

Page 11: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation11 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Or-join for Correctly Closing any Combination of Splits

� Or-join is the magic that joins two or more paths without creating deadlock or lack of synchronization

– If some combination of And- and Xor-joins could be used, it would blow up the model

Page 12: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation12 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Outline

� Acyclic diagrams– Semantics through use cases– Formalization problem

� Cyclic diagrams

Page 13: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation13 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Informal Semantics

� Or-join is enabled if– At least one slot is filled– It is not the case that some token “may still arrive” on an empty slot

empty slot

filled slot

Needs interpretation!

Page 14: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation14 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

State-Based Interpretation

� “May still arrive” = current state of the diagram can evolve into a state where the empty slot gets filled

� Does not yield a proper definition (Van der Aalst, Desel, Kindler 2002)– Def. of gateway enabling becomes dependent on def. of state evolution– Def. of state evolution depends on def. of gateway enabling

� Potential problem for execution engine– there are exponentially many states that the current state can evolve into

Page 15: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation15 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Graph-Based Interpretation

� “May still arrive” = there is a directed path from a token to an empty slot

� Inspired by BPMN 1.0 spec– Similar approach suggested by Dumas et al. 2007

� Formalization straight-forward

� Execution simple and efficient

Page 16: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation16 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Contribution

� Graph-based interpretation and state-based interpretation are essentially equivalent on acyclic diagrams

– They coincide on all sound diagrams

� Semantics induced by BPEL’s Dead Path Elimination (DPE) is equivalent as well

– DPE is applied to acyclic BPMN diagrams here

Page 17: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation17 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Outline

� Acyclic diagrams

� Cyclic diagrams– Semantics– Execution

Page 18: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation18 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

A Symmetric “Vicious Circle”

j1

j2

� State-based interpretation– j1 is enabled if j2 is not enabled– j2 is enabled if j1 is not enabled– cyclic dependency intrinsic to the diagram

� Graph-based interpretation– Defines deadlock

� How should the diagram behave? --- Unclear.

� Diagram should be sorted out

Page 19: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation19 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

An Asymmetric “Vicious Circle”

� Technically the same situation

� How should the diagram behave? --- Suggest:– First j1 then j2– Then loop

� Structure makes the difference w.r.t. previous example

Page 20: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation20 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Composition Principle

� Formal argument for the suggested behavior:– The behavior of a simple block should not change when nesting it into a simple loop– “Simple block” could be any sound acyclic block– “Simple loop” could be any cyclic sequential block– More general: Any nesting of such blocks should preserve semantics

� Benefits:– Supports modular understanding, composition and analysis– Preserves semantics when mapping from/to BPEL

+

Page 21: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation21 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

A New Semantics

� How to adapt graph-based semantics to establish the desired behavior?– Graph-based: Or-join waits if there is a path from a token to an empty slot

� Have to rule out the blue paths (witnessing a round error)– In (a), blue path visits the join itself– In (b), blue path visits e.g. s1

• Execution of s1 could bring a second token to Token 1 (lack of synchronization)

� Plain path = a path that does not visit the join under consideration

� Join waits if there is a plain path from a token to an empty slot unless – the path visits a node that has a plain path to a filled slot

Page 22: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation22 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Properties of New Semantics (Contributions)

� New semantics – is equivalent with the discussed semantics on sound acyclic graphs– obeys the composition principle– induces intuitive behavior on some cyclic unstructured graphs, e.g.:

Page 23: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation23 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Symmetric “Vicious Circle” Revisited

� New semantics still defines a deadlock

� Since intended behavior of this diagram is not clear,– Deadlock can be used to reject this diagram in static analysis

Page 24: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation24 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Beware of unstructured loops with multiple Or-joins

� Semantics defines deadlock

� How should this diagram behave?– (a) might suggest first j2 then j1– (b) is the same graph in a different layout– (b) might suggest first j1 then j2– (c) is another layout, better reflecting the symmetry– Intended meaning not clear (independent from layout)

� Can be sorted out by detecting the deadlock

Page 25: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation25 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Outline

� Acyclic diagrams

� Cyclic diagrams– Semantics– Execution

Page 26: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation26 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Execution Algorithm (Determines Enabling)

� Starting from filled slots of j– All backward-reachable edges in brown, stop at j– Computes the area that does not need to be searched for tokens

� Starting from empty slots of j– All backward-reachable edges in green, stop at j or any brown edge– Computes the area that needs to be searched for tokens

� If there is a token on a green edge, j needs to wait– Otherwise j is enabled

� Takes linear time in the number of edges

Page 27: IBM Research – Zurich Process Management Technologies A ...

© 2010 IBM Corporation27 Sep 14, 2010

IBM Research – ZurichProcess Management Technologies

Conclusion

� “Vicious circles” exist in “normal” diagrams

� New semantics– is graph-based

• straight-forward formalization and linear-time execution– is modular (obeys composition principle)

• eases understanding, analysis, refactoring, translation to/from BPEL– still induces deadlocks for some diagrams

• There, intended meaning is unclear, diagrams should be sorted out

� This semantics is included in BPMN 2.0

� Semantics is designed for safe processes – i.e., no lack of synchronization