Skip to Main Content
This paper introduces an approach for verifying atomicity requirements in services coordination.In our approach atomicity is expressed orthogonally to services coordination by means of contracts.A services coordination represents an execution order where execution is supposed to be free of problems (e.g., deadlocks and race condition). Such an execution order, is extended by atomicity requirements that deal with exceptional situations. Yet, contracts can introduce new states that should be verified in order prevent deadlocks and and race conditions at execution time and to determine possible termination states. The verification process cannot be done manually due to the number of combination of states. We propose an approach for statically verifying contract based atomic services coordinations using a model checker. The contracts defining the atomicity properties are expressed using the B method. The application logic is expressed using CSP processes. Therefore, the verification process is made by guiding the resulting B machine by the CSP process.