Understanding software architecture erosion: A systematic mapping study
Open accessAbstract
Architecture erosion (AEr) can adversely affect software development and has received significant attention in the last decade. However, there is an absence of a comprehensive understanding of the state of research about the reasons and consequences of AEr, and the countermeasures to address AEr. This work aims at systematically investigating, identifying, and analyzing the reasons, consequences, and ways of detecting and handling AEr. With 73 studies included, the main results are as follows: (1) AEr manifests not only through architectural violations and structural issues but also causing problems in software quality and during software evolution; (2) non‐technical reasons that cause AEr should receive the same attention as technical reasons, and practitioners should raise awareness of the grave consequences of AEr, thereby taking actions to tackle AEr‐related issues; (3) a spectrum of approaches, tools, and measures has been proposed and employed to detect and tackle AEr; and (4) three categories of difficulties and five categories of lessons learned on tackling AEr were identified. The results can provide researchers a comprehensive understanding of AEr and help practitioners handle AEr and improve the sustainability of their architecture. More empirical studies are required to investigate the practices of detecting and addressing AEr in industrial settings.
Integrity signals
Registry
Cites
Statistics
Claims the paper makes
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
Architecture erosion tends to affect quality and evolution of software systems, manifesting various symptoms.
“Architecture erosion tends to affect the quality and evolution of software systems, manifesting various symptoms as mentioned in our interviews and the literature [49].”
From Software Architecture in Practice: Challenges and Opportunities (2023) · cites this paper as [49]
Cites
Experimentation in Software Engineering
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M. C., Regnell, B., & Wesslén, A. (2012) · doi:10.1007/978-3-642-29044-2 · Cited by 4,460 · see citing works
Grounded theory in software engineering research: a critical review and guidelines
Stol, K.-J., Ralph, P., & Fitzgerald, B. (2016) · Proceedings of the 38th International Conference on Software Engineering · doi:10.1145/2884781.2884833 · Cited by 470 · cited 1× · see citing works
“We followed the guidelines of constant comparison 36,37 to analyze the extracted data (see Table 5) for answering RQ1, RQ3, RQ4, RQ5, RQ6, RQ7, and RQ8.”
MethodUsing grounded theory to study the experience of software development
Adolph, S., Hall, W., & Kruchten, P. (2011) · Empirical Software Engineering · doi:10.1007/s10664-010-9152-6 · Cited by 235 · cited 4× · see citing works
“We employed the descriptive statistics and Constant Comparison method 36 to analyze the qualitative data for answering the eight RQs (see Section 3.1).”
MethodInfluentialStop the software architecture erosion: building better software systems
Merkle, B. (2010) · Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion · doi:10.1145/1869542.1869563 · Cited by 10 · see citing works
Flagged first, then by citations
Cited by
Sorted by citations
Software Architecture in Practice: Challenges and Opportunities
Wan, Z., Zhang, Y., Xia, X., Jiang, Y., & Lo, D. (2023) · Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering · doi:10.1145/3611643.3616367 · Cited by 30 · see citing works
“The phenomenon of divergence between the intended and implemented architectures is regarded as architecture erosion [49].”
Background
- Authors
- Li, R., Liang, P., Soliman, M., & Avgeriou, P.
- Affiliations
- University of Groningen (NL)
- Wuhan University (CN)
- Corresponding author
- Liang, Peng
- Venue
- Journal of Software: Evolution and Process
- Publisher
- Wiley
- Published
- 2022-02-09
- Volume
- 34
- Issue
- 3
- ISSN
- 2047-7473 (ISSN-L)
- 2047-7481
- OpenAlex
- W4211100048
- Cited by
- 45
- References
- 4
- Citations by year
- 2026: 8 · 2025: 15 · 2024: 7 · 2023: 11 · 2022: 4
- FWCI
- 9.15
- Type
- journal article
- Language
- en
- Open access
- bronze
- doi.org
- Locations
- Journal of Software Evolution and Process (publishedVersion)
- arXiv (Cornell University) (submittedVersion)
- University of Groningen research database (University of Groningen / Centre for Information Technology) (submittedVersion, other-oa)
- arXiv (Cornell University) (cc-by)
- Funders
- National Natural Science Foundation of China (62172311)
- China Scholarship Council
- Topics
- Physical Sciences › Computer Science › Information Systems › Software Engineering Research
- Physical Sciences › Computer Science › Artificial Intelligence › Advanced Software Engineering Methodologies
- Physical Sciences › Computer Science › Software › Model-Driven Software Engineering Techniques
- Keywords
- software quality, software evolution, lessons learned, software sustainability
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review