Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.