Re: "Message" semantics and composition -- WAS Grounding Choreographies (the atoms)

I meant to extend on this with a further example ...

On Thursday, July 24, 2003, at 12:36  AM, Andrew Berry wrote:
> Getting back to the original reason for this thread, a message has at 
> least two viewpoints (sender and receiver) and they differ because the 
> viewpoints are phyically distributed and autonomous.  Modelling a 
> message as an atomic entity is therefore misleading, somewhat complex 
> and potentially incorrect.  This was my primary reason for suggesting 
> caution and also suggesting an alternative: modelling all interactions 
> as local behaviour (e.g. send@X, receive@Y) with causal relationship 
> specifications used to imply messaging (e.g. send@X -> receive@Y).

This approach really comes into its own when multiple parties are 
involved.  If we go back to the travel example, consider the following 
pseudo-code (leaving out the response semantics for brevity):

local behaviours (flight+car+accom@consumer, flight@airline, 
car@carrentalco, accom@hotel)
interactions (
    flight+car+accom@consumer -> flight@airline
    flight+car+accom@consumer -> car@carrentalco
    flight+car+accom@consumer -> accom@hotel
}

There are many ways we can satisfy this specification with messaging: 
we could multicast the original request to all three service providers, 
we could send individual messages to each containing only the 
information they require, we could process the request serially across 
the three service providers with the request forwarded to the next 
service provider after each processing step, or we could use additional 
coordination between them to guarantee all-or-nothing semantics.  None 
of these changes the business-level behaviour of the participants and 
the participant behaviour can be used in other similar compositions 
without changes.

Ciao,

AndyB

Received on Wednesday, 23 July 2003 11:49:22 UTC