Search papers, labs, and topics across Lattice.
This paper introduces a reference architecture (RA) that utilizes metadata to enhance service reusability in service-based architectures, addressing the issue of structural heterogeneity that leads to redundant service creation. By employing a pattern language and validating the architecture through scenario-based evaluations and real-world case studies, the authors demonstrate that the RA significantly reduces the frequency and impact of changes during system evolution. The findings reveal that most changes are minimal, such as configuration adjustments or the integration of pluggable components, thereby promoting maintainability and evolution of software systems.
Metadata-driven architectures can drastically reduce service redundancy, leading to more maintainable and evolvable software systems.
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.