[Paper Review] Software Architecture Metrics: a literature review
This systematic literature review identifies and evaluates software architecture metrics for assessing quality early in the design process and throughout development. It categorizes metrics by quality attributes like maintainability, extensibility, and performance, offering guidelines for their use and highlighting their relevance in real-world contexts, while noting limitations in industrial adoption and empirical validation.
In Software Engineering, early detection of architectural issues is key. It helps mitigate the risk of poor performance, and lowers the cost of repairing these issues. Metrics give a quick overview of the project which helps designers with the detection of flaws or degradation in their architecture. Even though studies unveiled architectural metrics more than 25 years ago, they have not yet been embraced by the industry nor the open source community. In this study, we aim at conducting a review of existing metrics focused on the software architecture for evaluating quality, early in the design flow and throughout the project's lifetime. We also give guidelines of their usage and study their relevance in different contexts.
Motivation & Objective
- To identify and catalog existing software architecture metrics applicable for early-stage quality evaluation.
- To assess the relevance and representativeness of these metrics in relation to key software architecture quality attributes.
- To provide practical guidelines for architects on how to apply these metrics during design and development.
- To evaluate the extent to which metrics reflect actual architectural quality features, especially in agile and iterative development contexts.
- To highlight gaps in industrial adoption and empirical validation of architecture metrics, especially compared to code-level tools like SonarQube.
Proposed method
- Conducted a systematic literature review (SLR) following best practices in SLR methodology, including forward and backward snowballing.
- Focused on peer-reviewed publications from the last 25 years, filtering for studies centered on architecture-level metrics.
- Classified metrics by the quality attributes they assess, such as maintainability, extensibility, simplicity, reusability, and performance.
- Evaluated each metric for its theoretical foundation, practical usability, and validation in real-world or case study settings.
- Assessed threats to validity, including time constraints and potential bias in paper selection based on titles.
- Compared metrics to existing code-level tools (e.g., SonarQube) to highlight the lack of design-level metric support in current tooling.
Experimental results
Research questions
- RQ1What are the metrics available for software designers to evaluate the quality of a software architecture?
- RQ2To what extent are these metrics representative of an architecture’s quality features such as maintainability, extensibility, and performance?
- RQ3How relevant and valid are these metrics in real-world software development contexts, especially in agile environments?
- RQ4Why have architecture metrics not been widely adopted by industry or open-source communities despite their theoretical value?
- RQ5What are the limitations of current metrics in terms of empirical validation and integration into design workflows?
Key findings
- A comprehensive list of architecture metrics was compiled, categorized by quality attributes such as maintainability, extensibility, and performance.
- Many metrics are not empirically validated on real projects, limiting their perceived reliability in industrial settings.
- Metrics based on code syntax (e.g., service granularity) are difficult to apply during early design phases, reducing their practical utility.
- There is a significant gap in tool support—existing tools like SonarQube focus on code-level metrics, not design-level architecture metrics.
- The study found that while metrics can help detect architectural flaws early, their adoption remains low due to lack of validation and tooling integration.
- Combining multiple metrics can provide a quantitative assessment of architectural quality, supporting better design decisions and comparisons between alternatives.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.