Service-based Architectures place reusability among their central design goals, yet structural heterogeneity across clients often drives the creation of services with similar functionalities, undermining system evolution and maintainability. In this work, we address this issue by focusing on validated architectural artifacts that bound to a limit the number of replicated services. We do so by proposing and validating a reference architecture that employs metadata as the core mechanism to promote service reusability, embracing heterogeneous data. The proposed RA is designed based on a pattern language with the same purpose, and it is evaluated by combining two well-established methods for RA evaluation: scenario-based evaluation and case studies with real-world systems. The triangulation of these methods' results demonstrated that, during the system's evolution, the most common change types the RA incurs are either no change or less impactful ones, like configuration changes or the addition of a pluggable class.
翻译:基于服务的架构将可复用性列为核心设计目标之一,然而客户端间的结构异构性常催生功能相似的服务,削弱系统演进与可维护性。本研究通过聚焦经验证的架构制品来限制冗余服务的数量,以此解决该问题。我们提出并验证了一种以元数据为核心机制来促进服务复用性的参考架构,该架构可兼容异构数据。所提出的参考架构基于具有相同目标的模式语言进行设计,并通过结合两种成熟的参考架构评估方法进行验证:基于场景的评估与真实系统案例研究。这些方法结果的三角互证表明,在系统演进过程中,该参考架构引发的最常见变更类型为无变更或低影响变更,例如配置变更或新增可插拔类。