Forecasting Architectural Decay from Evolutionary History
2021
As a software system evolves, its architecture tends to decay, leading to the occurrence of architectural elements that become resistant to maintenance or prone to defects. To address this problem, engineers can significantly benefit from determining which architectural elements will decay before that decay actually occurs. Forecasting decay allows engineers to take steps to prevent decay, such as focusing maintenance resources on the architectural elements most likely to decay. To that end, we construct novel models that predict the quality of an architectural element by utilizing multiple architectural views (both structural and semantic) and architectural metrics as features for prediction. We conduct an empirical study using our prediction models on 38 versions of five systems. Our findings show that we can predict low architectural quality, i.e., architectural decay, with high performanceeven for cases of decay that suddenly occur in an architectural module. We further report the factors that best predict architectural quality.
Keywords:
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
60
References
0
Citations
NaN
KQI