Scalable Correct-by-Construction Conversation Protocols with Event-B: Validation, Experiments and Benchmarks

In this paper, we address the design of distributed systems composed of peers (state-transitions systems) communicating through message exchanges. We consider choreographies as the ground formal model allowing a developer to describe and specify peers coordination as a set of conversations, i.e., all sequences of messages exchanged between the communicating peers. Proceeding this way does not require building the individual peers, nor their composition; they may be obtained by choreography projection. The correctness of the preservation of such messages exchanges by each peer obtained after projection is a key issue, known as the realizability problem. In our previous work [1], we have proposed a set of composition operators allowing designers to build realizable choreographies that are represented by conversation protocols (CPs). We rely on the correct-by-construction Event-B method to prove that each CP constructed using our operators is realizable. In this paper, we show how our approach applies and scales to a set of use cases borrowed from the literature and used by the research community. We also show that our approach allows to detect failures and failure recovery in case realizability does not hold