Presentation is loading. Please wait.

Presentation is loading. Please wait.

DecSerFlow Towards a Truly Declarative Service Flow Language Wil van der Aalst & Maja Pesic Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven,

Similar presentations

Presentation on theme: "DecSerFlow Towards a Truly Declarative Service Flow Language Wil van der Aalst & Maja Pesic Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven,"— Presentation transcript:

1 DecSerFlow Towards a Truly Declarative Service Flow Language Wil van der Aalst & Maja Pesic Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven, The Netherlands Invited talk 3rd International Workshop on Web Services and Formal Methods 8 September 2006, Vienna, Austria

2 Outline 1.Classical approaches BPEL2PN PN2BPEL 2.DecSerFlow Language Graphical notation and LTL semantics Implementation and application (specification and enactment) 3.Using DecSerFlow for process mining 4.Conclusion

3 Classical approaches BPEL2PN PN2BPEL 1.Formal languages (Petri nets, LTS, YAWL) 2.Graphical languages (BPMN,UML-AD) Industry standards: 1.BPEL 2.(abstract) BPEL 3.WS-CDL 4.etc.

4 BPEL2PN Many translations are available, cf. –S. Hinz, K. Schmidt, and C. Stahl. Transforming BPEL to Petri nets. BPM 2005. –C. Stahl. A Petri net semantics for BPEL. Technical Report 188, Humboldt Universität zu Berlin, June 2005. –etc. –C. Ouyang, W.M.P. van der Aalst, S. Breutel, M. Dumas, A.H.M. ter Hofstede, and H.M.W. Verbeek. Formal semantics and analysis of control flow in WS-BPEL. Technical Report BPM-05-13,, June 2005. Focus on analysis, i.e., verification of various properties. Our approach is implemented in BPEL2PNML and WofBPEL. cf. BEST (Berlin-Eindhoven Service Technology) program also involving tools such as BPEL2PN, LOLA and FIONA

5 Basic idea

6 Basic control flow

7 Basic control flow (2)

8 Also dealing with links, scopes, etc.

9 Example

10 Corresponding Petri net

11 PN2BPEL Joint work with Kristian Bisgaard Lassen. Few people have been working on this. Purpose: Generating readable BPEL code (otherwise it has no purpose). Implemented in WorkflowNet2BPEL4WS and ProM. Not complete, but extendible. Work with Chun Ouyang, Marlon Dumas, et al. (QUT) on using concepts in context of BPMN.

12 Basic idea Discover WF-net like components. Look for specific patterns that can easily be mapped onto BPEL (sequence, pick, switch, while, flow, etc.). Allow for ad-hoc extensions and re-use these.

13 4 types: PP, TP, PT, and TT components

14 Sequence

15 Flow acyclic explicit choice well-structured

16 Example

17 Fold sequence

18 Fold switch

19 Fold sequence

20 Fold sequence (2x) and pick (2x)

21 Final step: fold flow

22 Tool support: WorkflowNet2BPEL4WS and ProM

23 Empirical case study: 100 Protos Different student projects. Size of models: 23.66 places and 26.54 transitions. Reductions:




27 DecSerFlow Towards a Truly Declarative Service Flow Language joint work with Maja Pesic (TU/e)

28 Problems Tendency to over-specify. Focus on execution rather than "contractual" side. Proposal A more declarative approach –Graphical –Executable –Analysis support (both design and run-time)

29 Basic idea DecSerFlow notation LTL semantics

30 LTL

31 Small example

32 1. Existence formulas

33 2. Relation formulas

34 Example: "existence response" OK: –[ ] –[A,B,C,D,E] –[A,A,A,C,D,E,B,B,B] –[B,B,A,A,C,D,E] –[B,C,D,E] NOK –[A] –[A,A,C,D,E]

35 Example: "response" OK: –[ ] –[A,B,C,D,E] –[A,A,A,B,C,D,E] –[B,B,A,A,B,C,D,E] –[B,C,D,E] NOK –[A] –[B,B,B,B,A,A]

36 Example: "precedence" OK: –[ ] –[A,B,C,D,E] –[A,A,A,C,D,E,B,B,B] –[A,A,C,D,E] NOK –[B] –[B,A,C,D,E]

37 Combinations co-existence succession

38 3. Negation formulas

39 Example: "neg succession" Not the logical negation! OK: –[ ] –[A,C,D,E] –[A,A,A,C,D,E] –[B,B,A,A,C,D,E] –[B,C,D,E] NOK –[A,B] –[B,A,A,C,D,E,B] or

40 Using DecSerFlow Nature of model: –Global model (choreography model), i.e., interactions are described from the viewpoint of an external observer who oversees all interactions between all services (non- executable specification of a contractual nature). –Local model, i.e., the DecSerFlow model is used to specify, implement, or configure a particular service. Use: –Analysis of both global and local models. –Comparing global and local models. –Monitoring global and local models (conformance). –Enactment of local models.

41 Enactment A Büchi automaton typically assumes traces infinitely visiting an accepting state. There are several ways to address this. We use the approach proposed by Dimitra Giannakopoulou and Klaus Havelund to check finite traces. We can color the constraints green (in accepting state), yellow (accepting state can still be reached), or red (accepting state cannot be reached anymore).

42 Implementation (ConDec) Implementation on top of YAWL and ProM. Editor (with facilities to extend language) has been implemented. Initial experiments with enactment service. Plans to link editor with LTL checker in ProM.

43 Editor Add your own constraints!


45 Using DecSerFlow for process mining Thanks to Ton Weijters, Boudewijn van Dongen, Ana Karla Alves de Medeiros, Anne Rozinat, Christian Günter, Eric Verbeek, Ronny Mans, Minseok Song, Laura Maruster, Huub de Beer, Peter van den Brand, Jan Mendling, Andriy Nikolov, Jianmin Wang, Lijie Wen, Irene Vanderfeesten, Mariska Netjes, Steffi Rinderle, Walid Gaaloul, Gianluigi Greco, Antonella Guzzo, Maja Pesic, etc. etc.

46 Overview: Process mining

47 Discovery Based on an event log a model is constructed without a-priori information. Not just the control-flow, cf. the social network miner. ProM examples: alpha algorithm, heuristics miner, multi-phase miner, genetic miner, etc. DecSerFlow

48 Alpha miner

49 Other examples Export to CPN Tools, PNML, ARIS, EPC Tools, YAWL, Netminer, etc.

50 Conformance The log is compare with some a-priori model, the model can be a Petri net, EPC, data model, logical/temporal property, etc. ProM examples: conformance checker and LTL checker DecSerFlow

51 Examples

52 Extension An existing model is enriched with additional knowledge extracted from log. ProM examples: decision miner, staff assignment miner, performance analyzer, etc. DecSerFlow

53 Examples Export to CPN Tools!

54 Conformance in webservices in a classical setting (abstract BPEL + SOAP messages)

55 Conclusion Classical approaches: –BPEL2PN: mainly for analysis purposes. –PN2BPEL: also as an example for BPMN2BPEL, etc. DecSerFlow –Graphical notation, LTL semantics, extendible. –Linked to YAWL and ProM. Similar to ConDec aiming at supporting autonomous (groups of) workers. Interesting links between groupwork and services.

56 Relevant WWW sites http://

Download ppt "DecSerFlow Towards a Truly Declarative Service Flow Language Wil van der Aalst & Maja Pesic Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven,"

Similar presentations

Ads by Google