The emerging approach to building extended service collaborations that are provably reliable is to base the design on a contract that specifies the allowable patterns of message exchange between the participants from a global perspective. Such a global contract is known as a choreography.
Building a collaboration based on a choreography has three steps:
The picture shows a choreography for a collaboration between four participants: Customer, Supplier, Bank and Delivery Co. The choreography is defined as a Protocol Model consisting a three composed machines. The use of composition to define a choreography, as illustrated in this example, makes it much easier to define and verify complex collaborations compared to conventional non-compositional approaches. You can learn more about the use of Protocol Modelling for choreography from the following papers: |
Ashley McNeile: Protocol contracts with application to choreographed multiparty collaborations. Journal of Service Oriented Computing and Applications 4(2): pp109-136 (2010)
Ashley McNeile: Protocol modelling: Synchronous composition of data and behaviour. Birkbeck College, University of London. PhD Thesis (2016)
Ashley McNeile: Protocol modelling: Synchronous composition of data and behaviour. Birkbeck College, University of London. PhD Thesis (2016)