Design the outlines of BPEL processes for two sites that are performing the following bidding workflow:

Site 1 decides to offer an item for sale at some offering price and sends that offer in a message to site 2. When site 2 receives that message, it decides whether it wants to accept that offer or make a new bid (at some lower price). It sends that information, either newbid or accept, in a message to site 1. When site 1 receives
that message, it decides whether it wants to accept that bid or make a new offer (at a higher offering price). It then sends that information in a message to site 2.
The bidding continues, sending messages back and forth, until one of the sites, sa decides to accept a bid or offer and sends that information in a message to the other site, sb. After sending that accept message, sa exits the process, and after receiving the accept message, sb also exits the process.

What will be an ideal response?

The solution uses the BPEL while construct, which we did not discuss in the text. The outline of the processes at sites 1 and 2 are given below. First site 1 sends site 2 an initial bid (in bid1Var) and enters a while loop. Then, within the loop, site 1 receives a reply from site 2, which either accepts the bid (with the acceptOp operation) or makes a newbid (with the newBidOp operation containing the value of
the newbid in bid2Var). If site 2 made a newbid, site 1 sends it to its customer, cust1. The customer either accepts the bid or makes a newbid, which site 2 then sends to site 1 and then goes around the while loop again. The two processes use the following WSDL declarations. The file containing the declarations assigns the prefix n
to its target namespace.



































The prefix ng in the processes refers to the WSDL document containing these declarations. We assume that each customer supports a port type, customerPT, w ith operation getNextBidOp that a negotiator can invoke to relay the latest bid received
from its negotiating partner. The negotiating process at site 1, the initiator, declares the following partnerLinks:



myRole=‘‘initiator’’
partnerRole=‘‘negPartner’’/>
partherLinkType=‘‘ng:custToNegPLT’’
myRole=‘‘negotiator’’
partnerRole=‘‘customer’’/>


The following sequence activity is contained in the body of the process at site 1.


operation=‘‘bidOp’’ inputVariable=‘‘bid1Var’’/>








portType=‘‘ng:negPT’’
operation=‘‘acceptOp’’ variable=‘‘...’’>







portType=‘‘ng:negPT’’
operation = ‘‘bidOp’’ variable = ‘‘bid2Var’’>

portType=‘‘c:customerPT’’
operation=‘‘getNextBidOp’’
inputVariable=‘‘bid2Var’’/>

portType=‘‘ng:custToNegPT’’
operation=‘‘custAcceptOp’’
variable=‘‘...’’>







portType=‘‘ng:custToNegPT’’
operation=‘‘custBidOp’’
variable=‘‘bid1Var’’>
portType=‘‘ng:negPT’’
operation=‘‘bidOp’’
inputVariable=‘‘bid1Var’’/>









The outline of the BPEL process at site 2 is similar except that the roles are reversed and site 2 does not send the initial bid message. The following partner links are declared (once again the prefix ng refers to the WSDL document)


myRole=‘‘negPartner’’
partnerRole=‘‘initiator’’/>
partherLinkType=‘‘ng:custToNegPLT’’
myRole=‘‘negotiator’’
partnerRole=‘‘customer’’/>


and the following sequence activity is contained in the body of the process.










portType=‘‘ng:negPT’’
operation = ‘‘acceptOp’’ variable=‘‘...’’>







portType=‘‘ng:negPT’’
operation=‘‘bidOp’’ variable=‘‘bid1Var’’>

portType=‘‘c:customerPT’’
operation=‘‘getNextBidOp’’
inputVariable=‘‘bid1Var’’/>

portType=‘‘ng:custToNegPT’’
operation =‘‘custAcceptOp’’
variable=‘‘...’’>







portType=‘‘ng:custToNegPT’’
operation=‘‘custBidOp’’
variable=‘‘bid2Var’’>
portType=‘‘ng:negPT’’
operation=‘‘bidOp’’
inputVariable=‘‘bid2Var’’/>








Computer Science & Information Technology

You might also like to view...

The only difference between establishing a field validation rule and a record validation rule is ________

A) its validation text B) its structure C) how specific the rules are D) the data that is being validated

Computer Science & Information Technology

A network administrator wants to increase the confidentiality of the system by hardening the authentication process. Currently, the users log in using usernames and passwords to access the system. Which of the following will increase the authentication factor to three?

A. Adding a fingerprint reader to each workstation and providing a RSA authentication token B. Adding a fingerprint reader and retina scanner C. Using a smart card and RSA token D. Enforcing a stronger password policy and using a hand geometry scan

Computer Science & Information Technology