[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Portability Definition -- informal
I'll try to keep this rather informal, since I don't want develop a formal (and thus unreadable) definition. Intuitively, we can state that process portability means that using the same process definition on two different BPEL run-time implementations will result in the same process behaviour. Put another way, I should be able to swap two such implementations, and the overall behaviour of the system (including clients and services) will not change except where, of course, nondeterminism in the process definition allows. That might suffice as an informal definition, but I can't resist drilling in a little further. This is an interesting topic. Run-time behaviour can be gauged from the "black box" perspective, by observing message traffic in and out of an implementation. If we have the same BPEL process definition (and associated WSDL documents) used to configure two different BPEL run-time implementations, and the process definition itself avoids concurrency errors, then we can expect, given the same behaviour from clients and services used by the process for runs using each implementation, that:
There are some open questions here. Potentially, when we speak of observable message traffic, we can mean "abstract" WSDL messages, or we can mean binding-level stuff, encoded for shipment on the wire. It really depends on how much of the WSDL we want to pay attention to. By worrying about binding-level issues, we are treading on the ground covered by interoperability, but are staying closer to the "intuitive" definition of process portability, where we'd like to be able to swap BPEL implementions without disturbing the rest of the system. I think we touched on this overlap in the call today. An aside: perhaps someone can produce a (possibly normative) test oracle (small Oh) for determining if a message traffic trace is legal given a process definition? I know we want to avoid getting into the certification business (and wisely so), but such an oracle might serve as a poor man's reference implementation? Just a thought. -Ron |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]