ACM Home Page
Please provide us with feedback. Feedback
Ensuring interoperable service-oriented systems through engineered self-healing
Full text PdfPdf (496 KB)
Source
Foundations of Software Engineering archive
Proceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering on European software engineering conference and foundations of software engineering symposium table of contents
Amsterdam, The Netherlands
SESSION: Component-based software engineering table of contents
Pages 253-262  
Year of Publication: 2009
ISBN:978-1-60558-001-2
Authors
Giovanni Denaro  University of Milano-Bicocca, Milan, Italy
Mauro Pezzè  University of Milano-Bicocca and University of Lugano, Milan, Italy
Davide Tosi  University of Milano-Bicocca, Milan, Italy
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 25,   Downloads (12 Months): 42,   Citation Count: 0
Additional Information:

abstract   references   index terms  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1595696.1595734
What is a DOI?

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.