The ability to independently deploy parts of a software system is one of the cornerstones of modern software development, and allows for these parts to evolve independently and at different speeds. A major challenge of such independent deployment, however, is to ensure that despite their individual evolution, the interfaces between interacting parts remain compatible. This is especially important for enterprise software systems, which are often highly integrated and based on heterogenous IT infrastructures. Although several approaches for interface evolution have been proposed, many of these rely on the developer to adhere to certain rules, but provide little guidance for doing so. In this paper, we present an approach for interface evolution that is easy to use for developers, and also addresses typical challenges of heterogenous enterprise software, especially legacy system integration.
翻译:独立部署软件系统部件的能力是现代软件开发的基石之一,使这些部件能够独立和以不同的速度演变。然而,这种独立部署的一个主要挑战是如何确保尽管各部分的相互互动保持兼容性,这对企业软件系统尤其重要,因为企业软件系统往往高度一体化,而且基于异质信息技术基础设施。虽然提出了几种接口演变方法,但其中许多方法依赖开发者遵守某些规则,但很少为此提供指导。在本文件中,我们提出了便于开发者使用的界面演变方法,并还解决了不同企业软件,特别是遗留系统整合的典型挑战。