当前位置: X-MOL 学术IEEE Trans. Serv. Comput. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A Transformational Approach to Managing Data Model Evolution of Web Services
IEEE Transactions on Services Computing ( IF 5.5 ) Pub Date : 2022-01-21 , DOI: 10.1109/tsc.2022.3144613
Luca Beurer-Kellner , Jens Von Pilgrim , Christos Tsigkanos , Timo Kehrer

The communication of web services is typically organized through public APIs, which rely on a common data model shared among all system components. Over time, this data model must be changed in order to accommodate new or changing requirements, and the system components including the data they are operating on must be migrated. In practice, however, not all the affected components can be migrated instantly and at the same time. A common approach is to plan data model changes in a backward compatible fashion, which eventually causes serious maintenance problems and is a common cause of technical debt. In this paper, we propose an alternative solution to this problem by using a translation layer serving as a round-trip migration service which is responsible for the lossless forth-and-back translation of object-oriented data model instances of different versions. We present a framework which offers a version-aware interface definition language (IDL) for APIs, a typed JavaScript-based language for defining migration functions using the IDL definition, and a run-time environment for executing migrations. This is bundled into an integrated development environment assisting developers in implementing migration functions. From a methodological point of view, the development of round-trip migrations is supported by a catalog which comprises a set of typical data model evolution scenarios along with corresponding suitable round-trip migration strategies. We validate our framework by carrying out an extensive evaluation including a systematic assessment of expressiveness using our catalog, micro-benchmarking the performance of round-trip migrations, as well as a practical application in a case study of a real-world e-commerce web application obtained from an industrial partner.

中文翻译:


管理 Web 服务数据模型演变的变革性方法



Web 服务的通信通常通过公共 API 进行组织,这些 API 依赖于所有系统组件之间共享的通用数据模型。随着时间的推移,必须更改此数据模型以适应新的或不断变化的需求,并且必须迁移系统组件(包括它们所操作的数据)。但实际上,并非所有受影响的组件都可以立即同时迁移。一种常见的方法是以向后兼容的方式规划数据模型更改,这最终会导致严重的维护问题,并且是技术债务的常见原因。在本文中,我们提出了解决此问题的替代方案,即使用翻译层作为往返迁移服务,负责不同版本的面向对象数据模型实例的无损来回翻译。我们提出了一个框架,它为 API 提供了版本感知的接口定义语言 (IDL)、一种基于 JavaScript 的类型化语言(用于使用 IDL 定义来定义迁移函数)以及用于执行迁移的运行时环境。它被捆绑到一个集成开发环境中,帮助开发人员实现迁移功能。从方法论的角度来看,往返迁移的开发是由一个目录支持的,该目录包含一组典型的数据模型演化场景以及相应的合适的往返迁移策略。我们通过进行广泛的评估来验证我们的框架,包括使用我们的目录对表现力进行系统评估、对往返迁移的性能进行微基准测试,以及在现实世界电子商务网络的案例研究中的实际应用从工业合作伙伴处获得的申请。
更新日期:2022-01-21
down
wechat
bug