Abstract

Complex distributed systems pose great challenges for quality assurance. Size, complexity and concurrency of these systems often render traditional verification techniques impractical. In particular, this is true for systems integration efforts, where additional challenges arise from the independent evolution of the composed systems. Runtime verification provides a systematic strategy for analytical quality assurance of such systems. Key elements of runtime verification are system models, ways to inject these models into the observed system and a framework for analysing and monitoring the runtime behaviour against the models. The approach we present in this article is based on interaction models. We specify expected system interactions using Message Sequence Charts (MSC), from which we generate distributed runtime monitors for each of the components. We use aspect-oriented programming (AOP) techniques to inject the monitors into the implementation of the components. Thereby, we verify the adherence of the distributed system interactions with the MSC model. The focus of this article is the runtime verification in the systems integration domain; here, Enterprise Service Buses (ESB) have emerged as a powerful infrastructure for integrating complex distributed systems. In the context of an ESB we leverage the Spring AOP framework to inject the runtime monitors. As a result we obtain a comprehensive, tool-supported approach for model-based runtime verification of interactions. We demonstrate our approach using the Central Locking System as running example of an integrated embedded system.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call