Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dependable Composition of Web Services and Process Calculi Manuel Mazzara Newcastle University.

Similar presentations


Presentation on theme: "Dependable Composition of Web Services and Process Calculi Manuel Mazzara Newcastle University."— Presentation transcript:

1 Dependable Composition of Web Services and Process Calculi Manuel Mazzara Newcastle University

2 1.Process Calculi and their Equivalences reconfigurability in the pi-calculus equivalences/bisimulation 2.Dependable Composition of WS WS and standards BPEL composition Recovery 3.Process calculi and BPEL unification of Recovery Framework Agenda

3 Process Calculi and their Equivalences

4 Language syntax semantics pragmatics Interaction message passing mobility reconfigurability What is a “process calculus”?

5 Messages can include channel names (pi-calculus) Sending an address expecting a reply to that address output capability (MS Biztalk) a received name will be used as the subject of outputs only input capability (π-calculus) a received name will be used as the subject of inputs Reconfigurability

6 Functions identical outputs for identical inputs What about interactive programs? bisimulation programs exhibiting the same behaviour Equivalences

7 Web Services vs. BEV Services 50p Push “tea” Serve teaPush “coffee” 50p Serve coffee 50p Push “tea” Serve tea Push “coffee” 50p Serve coffee 50p IMPLEMENTATION SPECIFICATION Milner’s CCS famous example

8 These two BEV services accept the same message-sequences 50p.tea  tea 50p.50p.coffe  coffee Are they the same? message-sequences can be inadequate Essence of bisimulation attention to possibilities still available at each state Message-sequences

9 50p Push “tea” Serve teaPush “coffee” 50p Serve coffee SPECIFICATION 50p Push “tea” Serve tea Push “coffee” 50p Serve coffee 50p IMPLEMENTATION Look at this state

10 This state in the specification has two possibilities: 50p “tea” There is no matching state in the implementation The implementation fails bisimulation What is wrong?

11 A new implementation 50p Push “tea” Serve teaPush “coffee” 50p Serve coffee SPECIFICATION 50p private dialog with Illy, Lavazza, Segafredo, Breda NEW IMPLEMENTATION Push “tea” Serve teaPush “coffee” Serve coffee

12 Engagement in a private dialog with providers at the end it still emits the coffee Internal states same external possibilities of the specification Now it is fine!

13 Dependable Composition of Web Services

14 WS Background

15 BPEL for WS Composition XML (workflow) “programming language” Standard (11 April 2007)

16 A process consists of a set of (nested) activities Basic activity receive and send messages assign values to variables composition is stateful signal faults Structured activities sequential, parallel conditional looping BPEL Activities

17 SOAP is employed as an XML messaging protocol SOAP is not compulsory in SOA anyway message level WS-Reliability (OASIS) dependability added to the unreliable Internet channel of communication WS-Security (OASIS) specifies mechanisms to provide integrity and confidentiality of SOAP messages Dependability in WS (standards)

18 Fault Forecasting Fault Tolerance Fault Removal Fault Prevention Dependable Composition not standardised At the level of single services by domain- specific techniques Oracle BPEL process manager/Biztalk… provide no support Contractsconformance Deadlock Safety… stochastic Petri nets? recovery

19 Recovery in WS ACIDity is not possible when transactions last long periods and cross administrative domains atomicity has to be relaxed isolation has to be relaxed no “perfect” roll-back explicit compensation

20 WS-BPEL: scope Basic Units of Work WS-BPEL: fault handler FailuresManagement WS-BPEL: compensation PartialRoll-back BPEL Recovery Framework (1)

21 Fault Handler (FH) forwards error recovery reacts to events occurring during the normal execution catch blocks for explicitly thrown faults generally returned by an invoke activity possibly thrown from inside the process itself scopes are abnormally terminated when FH is invoked Compensation Handler (CH) backwards error recovery installed when the body successfully terminates application-specific rollback get back to a state where execution can continue available for another activity requiring an undo BPEL Recovery Framework (2)

22 Process Calculi and BPEL

23 Formal Methods?

24 BPEL process ? BPEL process ? ≈ Bisimulation ?

25 The Unifying Theory

26 Two ways to interact: Event raising Asynchronous message passing Reduction Semantics

27 Understanding of the OS ACTIVE BPEL semantics It “should” implement the standard BPEL Definition of the BPEL encoding BPEL Encoding Description of how the BPEL activites can be represented in the calculus

28 Use of the continuation passing style technique BPEL Encoding (only basic activities)

29 Work Unit Basic Units of Work Event Handler FailuresManagement PartialRoll-back Unified Recovery Framework

30 BPEL process π process BPEL process π process ≈ Use of Bisimulation

31 Semantics only for a subset of the BPEL activities Encoding hardly readable Timed theory not fully developed (timed transactions) Explosion of states when encoding examples due to signaling of the end of each activity Efficient Analysis of BPEL 2.0 Processes Using pi-Calculus Weidlich, M.; Decker, G.; Weske, M. Some feedback about this work

32 Contacts Manuel.Mazzara@newcastle.ac.uk www.cs.ncl.ac.uk/people/manuel.mazzara +44-(0)-191-222-5154 +44-(0)-191-222-5154 www.linkedin.com/in/manuelmazzara


Download ppt "Dependable Composition of Web Services and Process Calculi Manuel Mazzara Newcastle University."

Similar presentations


Ads by Google