ABSTRACT
Many modern software systems dynamically discover and integrate third party libraries, components and services that comply with standard APIs. Compliance with standard APIs facilitates dynamic binding, but does not always guarantee full behavioral compatibility. For instance, problems that derive from behavior incompatibility are quite frequent in service-oriented applications that dynamically bind service implementations that match API specifications.
This paper proposes a technique to engineer applications with a self-healing layer that dynamically reveals and fixes interoperability problems. The core elements of the technique are catalogs and a runtime infrastructure. Catalogs support developers in configuring the self-healing layers. The runtime infrastructure enacts the configured self-healing strategies. This paper discusses both the effectiveness of our solution and the relevance of the problem in the context of service-oriented applications, referring to a case study of Web2.0 social applications that integrate the standard APIs del.icio.us and OpenSocial. As an outcome of this experience we present an inconsistency catalog that supports the configuration of self-healing layers for Web2.0 applications.
- L. Baresi and S. Guinea. Towards dynamic monitoring of WS-BPEL processes. In Proceedings of the 3rd International Conference on Service Oriented Computing (ICSOC), pages 269--282, 2005. Google ScholarDigital Library
- D. Beyer, A. Chakrabarti, and T. A. Henzinger. An interface formalism for web services. In Proceedings of the 1st International Workshop on Foundations of Interface Technologies (FIT), ENTCS. Elsevier, 2005.Google Scholar
- W. Chan, S. Cheung, and K. Leung. A metamorphic testing approach for online testing of service-oriented software applications. International Journal of Web Services Research, 4(2):61--81, 2006.Google ScholarCross Ref
- S. Cheng, A. Huang, D. Garlan, B. R. Schmerl, and P. Steenkiste. Rainbow: Architecture-based self-adaptation with reusable infrastructure. In Proceedings of the 1st International Conference on Autonomic Computing (ICAC), pages 276--277, 2004. Google ScholarDigital Library
- K. Chow and D. Notkin. Semi-automatic update of applications in response to library changes. In Proceedings of the International Conference on Software Maintenance (ICSM). IEEE Computer Society, Nov. 1996. Google ScholarDigital Library
- M. Chu, C. Murphy, and G. E. Kaiser. Distributed in vivo testing of software applications. In Proceeding of the International Conference on Software Testing, Verification, Validation (ICST), pages 509--512, 2008. Google ScholarDigital Library
- J. Cobleigh, L. Osterweil, A. Wise, and B. S. Lerner. Containment units: a hierarchically composable architecture for adaptive systems. In Proceedings of the tenth Symposium on Foundations of Software Engineering (FSE), pages 159--165. ACM Press, 2002. Google ScholarDigital Library
- C. Dabrowski and K. Mills. Understanding self-healing in service-discovery systems. In Proceedings of the 1st Workshop on Self-healing Systems (WOSS), 2002. Google ScholarDigital Library
- H. Foster, S. Uchitel, J. Magee, and J. Kramer. Compatibility verification for web service choreography. In Proceedings of the International Conference on Web Services (ICWS), pages 738--741, 2004. Google ScholarDigital Library
- S. George, D. Evans, and L. Davidson. A biologically inspired programming model for self-healing systems. In Proceedings of the 1st Workshop on Self-Healing Systems (WOSS), pages 102--104, Nov. 2002. Google ScholarDigital Library
- A. Haller, E. Cimpian, A. Mocan, E. Oren, and C. Bussler. WSMX - a semantic service-oriented architecture. In Proceedings of the International Conference on Web Services (ICWS), pages 321--328, 2005. Google ScholarDigital Library
- P. Kaminski, H. Müller, and M. Litoiu. A design for adaptive web service evolution. In Proceedings of the International Workshop on Self-adaptation and self-managing systems (SEAMS), pages 86--92, 2006. Google ScholarDigital Library
- J. O. Kephart and D. M. Chess. The vision of autonomic computing. IEEE Computer, 36(1):41--50, 2003. Google ScholarDigital Library
- G. Klyne and J. J. Carroll. Resource Description Framework (RDF): Concepts and abstract syntax, W3C recommendation 10 Feb. 2004. http://www.w3.org/TR/rdf-concepts.Google Scholar
- D. Martin, M. Burstein, O. Lassila, M. Paolucci, T. Payne, and S. McIlraith. Describing web services using OWL-S and WSDL. In DAML-S Coalition working document, 2003.Google Scholar
- H. R. Motahari Nezhad, B. Benatallah, A. Martens, F. Curbera, and F. Casati. Semi-automated adaptation of service interactions. In Proceedings of the International Conference on World Wide Web (WWW), pages 993--1002, 2007. Google ScholarDigital Library
- P. Oreizy, M. M. Gorlick, R. N. Taylor, D. Heimhigner, G. Johnson, N. Medvidovic, A. Quilici, D. Rosenblum, and A. Wolf. An architecture-based approach to self-adaptive software. IEEE Intelligent Systems, 14(3):54--62, 1999. Google ScholarDigital Library
- M. Paolucci and M. Wagner. Grounding OWL-S in WSDL-S. In Proceedings of the International Conference on Web Services (ICWS), Sept. 2006. Google ScholarDigital Library
- M. Pezzè and M. Young. Software testing and analysis. John Wiley&Sons, 2008.Google Scholar
- V. Poladian, J. P. Sousa, D. Garlan, and M. Shaw. Dynamic configuration of resource-aware services. In Proceedings of the International Conference on Software Engineering (ICSE), pages 604--613, 2004. Google ScholarDigital Library
- S. Ponnekanti and A. Fox. Application-service interoperation without standardized service interfaces. In Proceedings of the Pervasive Computing and Communications Conference (PerCom), 2003. Google ScholarDigital Library
- S. Ponnekanti and A. Fox. Interoperability among independently evolving web services. In Proceedings of the International Middleware Conference, pages 331--351, 2004. Google ScholarDigital Library
- D. Roman, U. Keller, H. Lausen, J. de Bruijn, R. Lara, M. Stollberg, A.Polleres, C. Feier, C. Bussler, and D. Fensel. Web service modeling ontology. Applied Ontologies, 1(1):77--106, 2005. Google ScholarDigital Library
- M. K. Smith, D. L. McGuinness, and C. Welty. OWL Web Ontology Language guide, W3C recommendation 10 Feb. 2004. http://www.w3.org/TR/owl-guide.Google Scholar
- M. Solanki, A. Cau, and H. Zedan. Augmenting semantic web service descriptions with compositional specification. In Proceedings of the International Conference on World Wide Web (WWW), pages 544--552. ACM Press, May 2004. Google ScholarDigital Library
- D. Tosi, G. Denaro, and M. Pezzè. Experimental data on service interchangeability. Technical Report LTA:2008:01, University of Milano-Bicocca, Sep. 2008.Google Scholar
- G. Valetto and G. Kaiser. Using process technology to control and coordinate software adaptation. In Proceedings of the 25th International Conference on Software Engineering (ICSE), pages 262--272. IEEE Computer Society, May 2003. Google ScholarDigital Library
- Q. Wang, L. Quan, and F. Ying. Online testing of web-based applications. In Proceeding of the International Computer Software and Applications Conference (COMPSAC), pages 166--169, 2004. Google ScholarDigital Library
- Z. Xing and E. Stroulia. Api-evolution support with diff-catchup. IEEE Transactions on Software Engineering, 33(12):818--836, 2007. Google ScholarDigital Library
Index Terms
- Ensuring interoperable service-oriented systems through engineered self-healing
Recommendations
Towards autonomic service-oriented applications
The integration of third-party web services can solve complex business problems and can reduce risks, costs and time-to-market. However, the task of the integrators is challenged by services that are maintained by different organisations, and that may ...
Behavior Monitoring in Self-Healing Service-Oriented Systems
COMPSAC '10: Proceedings of the 2010 IEEE 34th Annual Computer Software and Applications ConferenceWeb services and service-oriented architecture (SOA) have become the de facto standard for designing distributed and loosely coupled applications. Many service-based applications demand for a mix of interactions between humans and Software-Based ...
Service Oriented Middleware: Trends and Challenges
ITNG '10: Proceedings of the 2010 Seventh International Conference on Information Technology: New GenerationsService Oriented Architecture (SOA) is not only an architecture, rather it is a relationship between the service provider, broker and user. Designing middleware platforms for this architecture really helps in achieving interoperability, loose coupling ...
Comments