Comp150CPA: Clouds and Power-Aware Computing
Classroom Exercise 16
Orchestration and Choreography
Spring 2011
group member 1: ____________________________ login: ______________
group member 2: ____________________________ login: ______________
group member 3: ____________________________ login: ______________
group member 4: ____________________________ login: ______________
group member 5: ____________________________ login: ______________
In class we have described both BPEL (orchestration) and
WS-CDL (choreography) languages for describing web service interactions.
Let's explore these in more detail.
- Annotate the following description of a web service interaction
with the tags
<exchange>...</exchange>, <sequence>...</sequence>,
<parallel>...</parallel>, <choice>...</choice>, <assign></assign>,
and <workunit>...</workunit>, as a preliminary translation into WS-CDL. Warning: some loops are implicit.
- Buyer selects item.
- Seller shows shopping cart.
- Buyer can either:
- Press "Continue shopping".
- Press "Proceed to checkout."
- Seller asks for shipping address.
- Buyer enters shipping address.
- Seller asks for credit card.
- Buyer enters credit card.
- Seller asks for billing address.
- Buyer enters billing address.
- Consider the following WS-BPEL:
<sequence name="TakeOrder" >
<receive name="receiveOrder"
createInstance="yes"
partnerLink ="Client"
operation="order"/> <!-- here -->
<reply name="SendConfirmation"
partnerLink ="Client"
operation="confirm"/> <!-- on client -->
</sequence>
For this example,
- What parts are analogous to WS-CDL exchanges?
- What parts are analogous to WS-CDL participants?
- Please sketch the structure of an approximately equivalent WS-CDL
description.
- (Advanced) Is choreography a substitute for orchestration,
or an extension? Explain.