|
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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
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.
|
| |
2
|
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.
|
| |
3
|
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.
|
| |
4
|
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.
|
| |
5
|
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.
|
| |
6
|
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.
|
| |
7
|
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.
|
| |
8
|
C. Dabrowski and K. Mills. Understanding self-healing in service-discovery systems. In Proceedings of the 1st Workshop on Self-healing Systems (WOSS), 2002.
|
| |
9
|
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.
|
| |
10
|
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.
|
| |
11
|
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.
|
| |
12
|
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.
|
| |
13
|
J. O. Kephart and D. M. Chess. The vision of autonomic computing. IEEE Computer, 36(1):41--50, 2003.
|
| |
14
|
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.
|
| |
15
|
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.
|
| |
16
|
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.
|
| |
17
|
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.
|
| |
18
|
M. Paolucci and M. Wagner. Grounding OWL-S in WSDL-S. In Proceedings of the International Conference on Web Services (ICWS), Sept. 2006.
|
| |
19
|
M. Pezzè and M. Young. Software testing and analysis. John Wiley & Sons, 2008.
|
| |
20
|
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.
|
| |
21
|
S. Ponnekanti and A. Fox. Application-service interoperation without standardized service interfaces. In Proceedings of the Pervasive Computing and Communications Conference (PerCom), 2003.
|
| |
22
|
S. Ponnekanti and A. Fox. Interoperability among independently evolving web services. In Proceedings of the International Middleware Conference, pages 331--351, 2004.
|
| |
23
|
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.
|
| |
24
|
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.
|
| |
25
|
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.
|
| |
26
|
D. Tosi, G. Denaro, and M. Pezzè. Experimental data on service interchangeability. Technical Report LTA:2008:01, University of Milano-Bicocca, Sep. 2008.
|
| |
27
|
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.
|
| |
28
|
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.
|
| |
29
|
Z. Xing and E. Stroulia. Api-evolution support with diff-catchup. IEEE Transactions on Software Engineering, 33(12):818--836, 2007.
|
|