Keep It Small, Keep It Real: Efficient Run-Time Verification of Web Service Compositions
Service compositions leverage remote services to deliver added-value distributed applications. Since services are administered and run by independent parties, the governance of service compositions is intrinsically decentralized and services may evolve independently over time. In this context, pre-deployment verification can only provide limited guarantees, while continuous run-time verification is needed to probe and guarantee the correctness of compositions at run time.
This paper addresses the issue of efficiency in the run-time verification of service compositions described in BPEL. It considers an existing monitoring approach based on ALBERT, which is a temporal logic language suitable for asserting both functional and non-functional properties, and shows how to obtain the efficient run-time verification of ALBERT formulae. The paper introduces an operational semantics for ALBERT through an extension of alternating automata, and explains how to optimize it to produce smarter, and thus more efficient, encodings of defined formulae. The optimized operational semantics can then be the basis for an efficient implementation of the run-time verification framework.
KeywordsTemporal Logic Service Composition Operational Semantic Linear Temporal Logic Standard Semantic
- 1.Andrews, T., et al.: Business Process Execution Language for Web Services, Version 1.1. BPEL4WS specification (2003)Google Scholar
- 3.Bianculli, D., Ghezzi, C., Spoletini, P., Baresi, L., Guinea, S.: A guided tour through SAVVY-WS: a methodology for specifying and validating web service compositions. In: Börger, E., Cisternino, A. (eds.) Advances in Software Engineering. LNCS, vol. 5316, pp. 130–161. Springer, Heidelberg (2008)Google Scholar
- 6.Baresi, L., Bianculli, D., Guinea, S., Spoletini, P.: Keep it small, keep it real: Efficient run-time verification of web service compositions. Technical Report 2009.9, Politecnico di Milano - Dipartimento di Elettronica e Informazione (2009)Google Scholar
- 7.Georges, A., Buytaert, D., Eeckhout, L.: Statistically rigorous Java performance evaluation. In: Proceedings of OOPSLA 2007, pp. 57–76. ACM, New York (2007)Google Scholar
- 9.Simmonds, J., Chechik, M., Nejati, S.: Property patterns for runtime monitoring of web service conversations. In: Proc. of RV 2008 (2008)Google Scholar
- 10.Drusinsky, D.: On-line monitoring of metric temporal logic with time-series constraints using alternating finite automata. JUCS 12(5), 482–498 (2006)Google Scholar
- 12.Giannakopoulou, D., Havelund, K.: Runtime analysis of linear temporal logic specifications. In: Proc. of ASE 2001, pp. 412–416. IEEE Computer Society, Los Alamitos (2001)Google Scholar