Automatic Determination of Compatibility in Evolving Services

A major advantage of Service-Oriented Architectures SOA is composition and coordination of loosely coupled services. Because the development lifecycles of services and clients are de-coupled, multiple service versions must be maintained to support older clients. Typically versions are managed within the SOA by updating service descriptions using conventions on version numbers and namespaces. In all cases, the compatibility among services descriptions must be evaluated, which can be hard, error-prone and costly if performed manually, particularly for complex descriptions. In this paper, the authors describe a method to automatically determine when two service descriptions are backward compatible. The authors describe a case study to illustrate version compatibility information in a SOA environment and present initial performance overheads. By automatically exploring compatibility information, a service developers can assess the impact of proposed changes; b proper versioning requirements can be put in client implementations guaranteeing that incompatibilities will not occur during run-time; and c messages exchanged in the SOA can be validated to ensure that only expected messages or compatible ones are exchanged.

[1]  Reidar Conradi,et al.  Version models for software configuration management , 1998, CSUR.

[2]  Mike P. Papazoglou,et al.  The Challenges of Service Evolution , 2008, CAiSE.

[3]  Lipyeow Lim,et al.  Preserving XML queries during schema evolution , 2007, WWW '07.

[4]  Massimo Mecella,et al.  When are Two Web Services Compatible? , 2004, TES.

[5]  Hao Wang,et al.  On Synchronizing with Web Service Evolution , 2008, 2008 IEEE International Conference on Web Services.

[6]  Ying Chen,et al.  A Version-aware Approach for Web Service Directory , 2007, IEEE International Conference on Web Services (ICWS 2007).

[7]  Fabio Casati,et al.  Supporting the dynamic evolution of Web service protocols in service-oriented architectures , 2008, TWEB.

[8]  BenatallahBoualem,et al.  Supporting the dynamic evolution of Web service protocols in service-oriented architectures , 2008 .

[9]  Dejan S. Milojicic,et al.  Automatically Determining Compatibility of Evolving Services , 2008, 2008 IEEE International Conference on Web Services.

[10]  Cláudia Maria Lima Werner,et al.  Odyssey-SCM: An integrated software configuration management infrastructure for UML models , 2007, Sci. Comput. Program..

[11]  Liana L. Fong,et al.  Using an Interface Proxy to Host Versioned Web Services , 2008, 2008 IEEE International Conference on Services Computing.

[12]  Armando Fox,et al.  Interoperability Among Independently Evolving Web Services , 2004, Middleware.

[13]  Boi Faltings,et al.  Large scale, type-compatible service composition , 2004 .

[14]  Liana L. Fong,et al.  An Approach to Hosting Versioned Web Services , 2007, IEEE International Conference on Services Computing (SCC 2007).

[15]  Ying Chen,et al.  A Version-aware Approach for Web Service Client Application , 2007, 2007 10th IFIP/IEEE International Symposium on Integrated Network Management.

[16]  Salima Benbernou,et al.  Managing the Evolution of Service Specifications , 2008, CAiSE.

[17]  Marin Litoiu,et al.  A design technique for evolving web services , 2006, CASCON.