Automatic Determination of Compatibility in Evolving Services

Automatic Determination of Compatibility in Evolving Services
复制标题

DOI:
10.4018/jwsr.2011010102
复制
发表时间:
2011
期刊:
Int. J. Web Serv. Res.
影响因子:
--
通讯作者:
K. Becker;J. Pruyne;S. Singhal;Andre Lopes;D. Milojicic
K. Becker;J. Pruyne;S. Singhal;Andre Lopes;D. Milojicic
中科院分区:
其他
文献类型:
--
作者:
K. Becker;J. Pruyne;S. Singhal;Andre Lopes;D. Milojicic

文献摘要

被引文献

相似文献

面向服务的架构(SOA)的一个主要优势是对松耦合服务进行组合和协调。由于服务和客户端的开发生命周期是解耦的,必须维护多个服务版本以支持旧客户端。通常,在SOA中通过使用版本号和命名空间的约定更新服务描述来管理版本。在所有情况下,都必须评估服务描述之间的兼容性,如果手动进行,这可能很困难、容易出错且成本高昂,对于复杂的描述尤其如此。在本文中,作者描述了一种自动确定两个服务描述何时向后兼容的方法。作者描述了一个案例研究,以说明SOA环境中的版本兼容性信息,并给出了初始性能开销。通过自动探究兼容性信息,(a)服务开发人员可以评估提议的更改所带来的影响;(b)可以在客户端实现中提出适当的版本控制要求,以确保在运行时不会出现不兼容性;(c)可以验证在SOA中交换的消息,以确保只交换预期的消息或兼容的消息。
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.