Detecting behavioural incompatibilities between two services
Abstract
Services are expected to undergo changes, for example as a result of new business rules, or because of correcting issues. When this arises, services designers may need to compare two servicesâï��ï�� interface in order to understand their differences in order to fix the resulting incom- patibilities. The paper presents a technique to detect and report differences between services behaviour. We adopt the notion of simulation as a basis for determining whether a service S1 is behaviourally compatible with an another one S2. Unlike prior work, our technique does not only check if S1 simulates S2 or not. Instead, having identified one source of incom- patibility between S1 and S2, the technique goes on to identify other in- compatibilities, thus providing more detailed diagnostics. The technique has been implemented in a tool that visually pinpoints a set of changes that cause one behavioural interface not to simulate another one.