Abstract
Context: One of the key requirements for the code is conformance with the architecture. Architectural drift implies the diverging of the implemented code from the architecture design of the system. Manually checking the consistency between the implemented code and architecture can be intractable and cumbersome for large-scale systems. Objective: This article proposes a holistic, automated architecture drift analysis approach that explicitly focuses on the adoption of architecture views. The approach builds on, complements, and enhances existing architecture conformance analysis methods that do not adopt a holistic approach or fail to address the architecture viewpoints. Method: A model-driven development approach is adopted in which architecture views are represented as specifications of domain-specific languages. The code in its turn, is analyzed, and the architectural view specifications are reconstructed, which are then automatically checked with the corresponding architecture models. Results: To illustrate the approach, we have applied a systematic case study research for an architecture drift analysis of the business-to-customer (B2C) system within a large-scale software company. Conclusion: The case study research showed that divergences and absences of architectural elements could be detected in a cost-effective manner with the proposed approach.
Original language | English |
---|---|
Article number | 103774 |
Number of pages | 18 |
Journal | Computer Standards and Interfaces |
Volume | 87 |
DOIs | |
Publication status | Published - Jan 2024 |
Keywords
- Architecture drift
- Architecture drift analysis
- Model-driven development
- Software architecture reconstruction