“…To this aim a foundational study about coarsest refinement preorders between behavioural contracts made it possible to decide whether a service discovered on the internet can be used to play the role of a service with a given desired contract in the context of a multi-party coordination (independently of the service discovered for the other roles) [2,12,11,10,7,6], or to play a certain role in a given choreography [13,9,8], without incurring in deadlocks (and furthermore guaranteeing termination under fairness assumption). More precisely, theories of behavioural contracts have been introduced which enable reasoning about correct service composition (contract compliance) and service substitutability (contract refinement preorder) under different assumptions concerning service communication: synchronous address [13,2,8] or name based [11,10,6] communication (invocations are directed to a certain role or just based on channel names as in CCS) with patient non-preemptable or impatient invocations (waiting admitted when invoking services, as in CCS communication, or not admitted, as for the ready-send primitive of the Message Passing Interface) [12,7], or asynchronous communication with queues [13,9].…”