OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [wsbpel] Topics for the "Review input from TC members" session of the F2FSome




Assaf Arkin wrote:
> But I still believe we need to make a distinction between 
> interactions 
> that are finite in time (where finite could be 24 hours) and 
> constrained 
> to some fault-detecting context (e.g. a BPEL scope), and between 
> interactions that are not finite in time and not constrained to a 
> fault-detecting context and so are done using separate asynchronous 
> operations. For example, if you consider submitting a 
> purchase order and 
> receiving an acceptance, that is typically finite in time and 
> handled by 
> the same sender.
I would not argue with the above characterizations. Certainly as a purely practical matter the finite time constraint is very important. My feeling is that the distinction you make based on fault-detecting context is in general more significant and should be viewed as /the/ distinction between synch/asynch interactions. 

> 
> But if you consider receiving an invoice and submitting 
> payment, these 
> two messages can be handled by different processes. In some 
> implementations the invoice will be sent and the payment would be 
> received by the same process. In another implementation the 
> invoice will 
> be sent by some process which then starts a payment 
> collection process, 
> and the payment is correlated and routed to the payment collection 
> process (which can be used in other contexts as well). This 
> is a clear 
> case where using asynchronous interactions becomes more 
> interesting. If 
> a failure occurs while waiting for the payment this is not a 
> problem for 
> the process sending the invoice - you already shipped the 
> order there's 
> nothing you can do about it. It is, however, an issue for the payment 
> collection process to deal with.

The case I am thinking of is something along the lines of a loan approval process where the loan parameters are submitted and the loan is either approved or denied. To me this is a synchronous request/response interaction; even though the approval process may take weeks, I would like to model such a process without asynchronous callbacks. This is particularly handy when nesting processes (i.e. when the loan approval process is a sub-process of a loan origination process), reducing considerably the complexity of the nesting processes. 

-Maciej Szefler




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]