×

zbMATH — the first resource for mathematics

Monitoring and recovery for web service applications. (English) Zbl 1314.68037
Summary: Web service applications are distributed processes that are composed of dynamically bounded services. In this paper, we give a definitive description of a framework for performing runtime monitoring of web service applications against behavioural correctness properties described as finite state automata. These properties specify forbidden and desired interactions between service partners. Finite execution traces of web service applications described in BPEL are checked for conformance at runtime. When violations are discovered, our framework automatically proposes adaptation strategies, in the form of plans, which users can select for execution. Our framework also allows verification of stated pre- and post-conditions of service partners and provides guarantees of correctness of the generated recovery plans.

MSC:
68M11 Internet topics
68Q85 Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.)
68T20 Problem solving in the context of artificial intelligence (heuristics, search strategies, etc.)
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] van der Aalst WMP, Weske M (2005) Case handling: a new paradigm for business process support. Data Knowl Eng 53(2):129–162 · doi:10.1016/j.datak.2004.07.003
[2] Alur R, Henzinger TA (1998) Finitary fairness. ACM Trans Program Lang Syst 20:1171–1194 · doi:10.1145/295656.295659
[3] Ball T, Rajamani S (2001) The SLAM toolkit. In: Proceedings of 13th international conference on computer-aided verification (CAV’01). LNCS, vol 2102. Springer, Berlin, pp 260–264 · Zbl 0996.68560
[4] Baresi L, Guinea S (2007) Dynamo and self-healing BPEL compositions (research demonstration). In: Proceedings of the 29th international conference on software engineering (ICSE’07). IEEE Computer Society (2007). Companion Volume, pp 69–70
[5] Baresi L, Guinea S (2011) Self-supervising BPEL processes. IEEE Trans Softw Eng 37(2):247–263 · doi:10.1109/TSE.2010.37
[6] Baresi L, Guinea S, Plebani P (2006) WS-Policy for service monitoring. In: 6th VLDB international workshop on technologies for E-services. LNCS, vol 3811. Springer, Berlin, pp 72–83
[7] Baresi L, Pasquale L (2010) Adaptive goals for self-adaptive service compositions. In: Proceedings of the (2010) IEEE international conference on web services (ICWS ’10). IEEE Computer Society, Washington, DC, USA, pp 353–360
[8] Berre DL, Parrain A (2012) SAT4J. http://www.sat4j.org/
[9] Biancullia D, Ghezzi C (2012) DynamoAOP–user manual. http://plastic.isti.cnr.it/download/tools/dynamo-aop/dynamoaop-manual.pdf
[10] Burdy L, Cheon Y, Cok DR, Ernst MD, Kiniry JR, Leavens GT, Leino KRM, Poll E (2005) An overview of JML tools and applications. Int J Softw Tools Technol Transf 7:212–232 · doi:10.1007/s10009-004-0167-4
[11] Carzaniga A, Gorla A, Perino N, Pezzè M (2010) Automatic workarounds for web applications. In: Proceedings of eighteenth international symposium on the foundations of, software engineering (FSE’10), pp 237–246
[12] Carzaniga A, Gorla A, Pezzè M (2008) Healing web applications through automatic workarounds. Int J Softw Tools Technol Transf 10(6):493–502 · Zbl 05536152 · doi:10.1007/s10009-008-0088-8
[13] Charfi A, Dinkelaker T, Mezini M (2009) A plug-in architecture for self-adaptive web service compositions. In: Proceedings of the (2009) IEEE international conference on web services (ICWS ’09). IEEE Computer Society, Washington, DC, USA, pp 35–42
[14] Charfi A, Mezini M (2007) AO4BPEL: an aspect-oriented extension to BPEL. World Wide Web 10:309–344 · Zbl 05188612 · doi:10.1007/s11280-006-0016-3
[15] Cheng BHC, de Lemos R, Garlan D, Giese H, Litoiu M, Magee J, Müller HA, Taylor R (2009) SEAMS 2009: Software engineering for adaptive and self-managing systems. In: 31st international conference on software engineering (ICSE’09), Companion Volume, pp 463–464
[16] DISI-UniTN/FBK-IRST (2012) The MathSAT 5 SMT Solver. http://mathsat.fbk.eu
[17] Dobson G (2006) Using WS-BPEL to implement software fault tolerance for web services. In: 32nd EUROMICRO conference on software engineering and advanced applications (EUROMICRO-SEAA’06), pp 126–133
[18] Fikes R, Nilsson NJ (1971) STRIPS: a new approach to the application of theorem proving to problem solving. J Artif Intell 2(3/4):189–208 · Zbl 0234.68036 · doi:10.1016/0004-3702(71)90010-5
[19] Foster H (2006) A rigorous approach to engineering web service compositions. PhD thesis, Imperial College
[20] Foster H, Emmerich W, Kramer J, Magee J, Rosenblum D, Uchitel S (2007) Model checking service compositions under resource constraints. In: Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering (ESEC-FSE ’07). ACM, New York, pp 225–234
[21] Fu X, Bultan T, Su J (2004) Analysis of interacting BPEL web services. In: Proceedings of the 13th international conference on, world wide web (WWW’04), pp 621–630
[22] Fugini MG, Mussi E (2006) Recovery of faulty web applications through service discovery. In: Proceedings of the 1st SMR-VLDB workshop, matchmaking and approximate semantic-based retrieval: issues and perspectives. In: 32nd international conference on very large databases, pp 67–80
[23] Gurfinkel A, Wei O, Chechik M (2006) Yasm: a software model-checker for verification and refutation. In: Proceedings of 18th international conference on computer-aided verification (CAV’06). LNCS, vol 170–174. Springer, Seattle, p 4144
[24] Heckel R, Lohmann M (2005) Towards contract-based testing of web services. Electron Notes Theoret Comput Sci 116:145–156 · doi:10.1016/j.entcs.2004.02.073
[25] Hinz S, Schmidt K, Stahl C (2005) Transforming BPEL to Petri nets. In: Proceedings of the 3rd international conference on business process management (BPM’05). LNCS, vol 3649. Springer, Berlin, pp 220–235
[26] IBM (2012) WebSphere integration developer. http://www-01.ibm.com/software/integration/wid/
[27] Inverardi P, Mostarda L, Tivoli M, Autili M (2005) Synthesis of correct and distributed adaptors for component-based systems: an automatic approach. In: Proceedings of the 20th international conference on automated software engineering (ASE’05). ACM, New York, pp 405–409
[28] Kautz HA, Selman B (1999) Unifying SAT-based and graph-based planning. In: Proceedings of the 16th international joint conference on, artificial intelligence (IJCAI’99), pp 318–325
[29] McDermott DV (2002) Estimated-regression planning for interactions with web services. In: Proceedings of the sixth international conference on artificial intelligence planning systems (AIPS ’02). AAAI, pp 204–211
[30] McIlraith SA, Son TC (2002) Adapting golog for composition of semantic web services. In: Proceedings of the 8th international conference on principles and knowledge representation and reasoning (KR ’02). Morgan Kaufmann, San Francisco, pp 482–496
[31] Meyer B (1992) Applying ”design by contract”. Computer 25:40–51 · Zbl 05090679 · doi:10.1109/2.161279
[32] Milner R (1989) Communication and concurrency. Prentice-Hall, New York · Zbl 0683.68008
[33] Narayanan S, McIlraith SA (2002) Simulation, verification and automated composition of web services. In: Proceedings of the 11th international conference on world wide web (WWW ’02). ACM, pp 77–88
[34] Nicola RD, Vaandrager F (1995) Three logics for branching bisimulation. J ACM 42(2):458–487 · Zbl 0886.68064 · doi:10.1145/201019.201032
[35] OASIS (2012) Web Services Business Process Execution Language Version 2.0. http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html
[36] Oracle (2012) Welcome to NetBeans. http://netbeans.org
[37] Ouyang C, Verbeek E, van der Aalst WMP, Breutel S, Dumas M, ter Hofstede AHM (2007) Formal semantics and analysis of control flow in WS-BPEL. Sci Comput Program 67(2–3):162–198 · Zbl 1122.68073 · doi:10.1016/j.scico.2007.03.002
[38] Simmonds J (2011) Dynamic analysis of web services. Ph.D. thesis, University of Toronto, Toronto · Zbl 1320.74076
[39] Simmonds J, Ben-David S, Chechik M (2010) Guided recovery for web service applications. In: Proceedings of eighteenth international symposium on the foundations of, software engineering (FSE’10), pp 247–256
[40] Simmonds J, Ben-David S, Chechik M (2010) Monitoring and recovery of web service applications. In: Ng JW, Chignell M, Cordy JR (eds) Smart internet. Lecture Notes in Computer Science, Springer, Berlin, pp 250–288 · Zbl 1314.68037
[41] Simmonds J, Ben-David S, Chechik M (2010) Optimizing computation of recovery plans for BPEL applications. In: Proceedings of 2010 workshop on testing, analysis and verification of web software (TAV-WEB’10), pp 3–14
[42] Simmonds J, Chechik M (2010) RuMoR: monitoring and recovery of BPEL applications. In: Proceedings of 25th IEEE/ACM international conference on, automated software engineering (ASE’10), pp 345–346
[43] Simmonds J, Gan Y, Chechik M, Nejati S, O’Farrell B, Litani E, Waterhouse J (2009) Runtime monitoring of web service conversations. IEEE Trans Service Comput 2(3):223–244 · doi:10.1109/TSC.2009.16
[44] Traverso P, Pistore M (2004) Automated composition of semantic web services into executable processes. In: Proceedings of the international semantic web conference (ISWC ’04), pp 380–394
[45] W3C (2012) Semantic Web. http://www.w3.org/standards/semanticweb/ · Zbl 1248.68032
[46] W3C (2012) Web Services Description Language (WSDL). http://www.w3.org/TR/wsdl
[47] Yan Y, Poizat P, Zhao L (2010) Self-adaptive service composition through graphplan repair. In: IEEE international conference on web services (ICWS ’10), pp 624–627
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.