RE: Choreography State Definition (was: RE: More requirement

David Burdett asks:
> Why is the alignment of the observable state [...]
> so important?

As Len Greski said during the F2F meeting,
he wants to know the state of an order,
not the state of an endpoint.

Aligned state is not only possible,
there are several transaction protocols
that will get you there, with varying
degrees of certainty: BTP, WS-T,
(BPPS, UNCEFACT BCP and RosettaNet)
(all three in parens are basically the same).

It is true that you cannot align states across
trading partners based on one single message,
and within a transaction, the states of the 
endpoints will be different.

But at the end of the transaction,
the trading partners can be assured
(with whatever degree of certainty
the transaction protocol offers)
of a common business state.

For example, in your order case,
if the transaction covered an offer-acceptance
business protocol, then at the end,
both buyer and seller could know
if the order was accepted or not.

It means at least two layers of state machines:
1) communicating state machines inside a transaction, 
where the states of participants are different,
2) a common-knowledge or logically-shared
state machine at the business relationship level,
above the transactions.

Received on Wednesday, 25 June 2003 07:37:18 UTC