Event-based design and runtime verification of composite service transactional behavior
Résumé
Different from process components, Web services are defined independently from any execution context. A key challenge of (Web) service compositions is how to ensure reliable execution. Due to their inherent autonomy and heterogeneity, it is difficult to reason about the behavior of service compositions especially in case of failures. Therefore, there is a growing interest for verification techniques which help to prevent service composition execution failures. In this paper, we propose an event-driven approach to validate the transactional behavior of service compositions. The transactional behavior verification is done either at design time to validate recovery mechanisms consistency, or after runtime to report execution deviations and repair design errors, and therefore, formally ensure service execution reliability. By using the Event Calculus formalism to specify and check the transactional behavior consistency of service composition, our approach provides a logical foundation to ensure service execution reliability.