Warnings: Violation Symptoms Indicating Architecture Erosion
Ruiyin Li, Peng Liang, Paris Avgeriou

TL;DR
This study analyzes code review comments to identify architecture violation symptoms, categorizing their linguistic patterns and developer reactions, to better understand and prevent architecture erosion in evolving software systems.
Contribution
It introduces a systematic analysis of violation symptoms in code reviews, revealing categories, linguistic patterns, and developer responses to aid architecture erosion management.
Findings
10 categories of violation symptoms identified
Frequent terms include 'inconsistent' and 'violate'
Refactoring and code removal are primary responses
Abstract
As a software system evolves, its architecture tends to degrade, and gradually impedes software maintenance and evolution activities and negatively impacts the quality attributes of the system. The main root cause behind architecture erosion phenomenon derives from violation symptoms (such as violations of architecture pattern). Previous studies focus on detecting violations in software systems using architecture conformance checking approaches. However, code review comments are also rich sources that may contain extensive discussions regarding architecture violations. In this work, we investigated the characteristics of architecture violation symptoms in code review comments from the developers' perspective. We employed a set of keywords related to violation symptoms to collect 606 (out of 21,583) code review comments from four popular OSS projects in the OpenStack and Qt communities.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Software Engineering Techniques and Practices
