WSDL and UDDI extensions for version support in web services

Versioning is an important aspect of web service development, which has not been adequately addressed so far. In this article, we propose extensions to WSDL and UDDI to support versioning of web service interfaces at development-time and run-time. We address service-level and operation-level versioning, service endpoint mapping, and version sequencing. We also propose annotation extensions for developing versioned web services in Java. We have tested the proposed solution for versioning in two real-world environments and identified considerable improvements in service development and maintenance efficiency, improved service reuse, and simplified governance.

[1]  Reidar Conradi,et al.  Change Oriented Versioning , 1989, ESEC.

[2]  Jonathan E. Cook,et al.  Highly reliable upgrading of components , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[3]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.

[4]  Jan Mendling,et al.  Business Process Execution Language for Web Services , 2006, EMISA Forum.

[5]  Ali Arsanjani,et al.  Service-oriented modeling and architecture , 2004 .

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

[7]  Guilaine Talens,et al.  Versions of Simple and Composite Objects , 1993, VLDB.

[8]  Raymond K. Wong,et al.  Managing and querying multi-version XML data with update logging , 2002, DocEng '02.

[9]  Gunter Schlageter,et al.  A General Model for Version Management in Databases , 1986, VLDB.

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

[11]  Amélie Marian,et al.  Change-Centric Management of Versions in an XML Warehouse , 2001, VLDB.

[12]  G. Richards The more things change... , 1986, The American journal of nursing.

[13]  Andreas Zeller,et al.  A unified version model for configuration management , 1995, SIGSOFT FSE.

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

[15]  Premek Brada,et al.  Component revision identification based on IDL/ADL component specification , 2001, ESEC/FSE-9.

[16]  Christoph Reichenberger Concepts and Techniques for Software Version Control , 1994, Softw. Concepts Tools.

[17]  Hans van Vliet,et al.  Software engineering - principles and practice , 1993 .

[18]  Serge Abiteboul,et al.  Detecting changes in XML documents , 2002, Proceedings 18th International Conference on Data Engineering.

[19]  Curtis E. Dyreson,et al.  Validating quicksand: Temporal schema versioning in tauXSchema , 2008, Data Knowl. Eng..

[20]  Carlo Zaniolo,et al.  XML document versioning , 2001, SGMD.

[21]  Hans van Vliet,et al.  How well can we predict changes at architecture design time? , 2003, J. Syst. Softw..

[22]  Galen C. Hunt,et al.  Component-Based APIs for Versioning and Distributed Applications , 1999, Computer.

[23]  Randy H. Katz,et al.  Toward a unified framework for version modeling in engineering databases , 1990, CSUR.

[24]  Matjaz B. Juric,et al.  BPEL Cookbook: Best Practices for SOA-based integration and composite applications development , 2006 .

[25]  ÜvÝ A Layered Architecture for Uniform Version Management , 2000 .

[26]  Carlo Zaniolo,et al.  XML version detection , 2007, DocEng '07.

[27]  Fusheng Wang,et al.  Temporal queries and version management in XML-based document archives , 2008, Data Knowl. Eng..

[28]  Samir Tata,et al.  How to Consider Requester's Preferences to Enhance Web Service Discovery? , 2007, Second International Conference on Internet and Web Applications and Services (ICIW'07).

[29]  Twittie Senivongse Enabling flexible cross-version interoperability for distributed services , 1999, Proceedings of the International Symposium on Distributed Objects and Applications.

[30]  Steven P. Reiss,et al.  Configuration management with logical structures , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[31]  Marin Litoiu,et al.  A design for adaptive web service evolution , 2006, SEAMS '06.

[32]  Scott F. Smith,et al.  A formal framework for component deployment , 2006, OOPSLA '06.

[33]  James Pasley Avoid XML schema wildcards for Web service interfaces , 2006, IEEE Internet Computing.

[34]  Alexander Stuckenholz,et al.  Component evolution and versioning state of the art , 2005, SOEN.

[35]  Matjaz B. Juric,et al.  Business process execution language for web services , 2004 .