Journal
JOURNAL OF SYSTEMS AND SOFTWARE
Volume 208, Issue -, Pages -Publisher
ELSEVIER SCIENCE INC
DOI: 10.1016/j.jss.2023.111875
Keywords
Software architecture; Architecture erosion; Repair costs; Software evolution
Ask authors/readers for more resources
Software architecture erosion has a negative impact on software quality, performance, and evolution cost. This paper proposes an approach called EsArCost to locate the causes of architecture erosion and estimate the repair cost of each erosion problem. Experimental results show that EsArCost can effectively and efficiently estimate repair costs.
Software architecture erosion has a negative effect on software quality, software performance and evolution cost, so repairing architecture erosion is an important task. However, in the actual evolution process, due to the pressure of cost, it is not practical to repair all erosion problems. To repair more erosion problems at a certain total cost, developers would better know the appropriate repair cost of each erosion problem. In this paper, we propose an approach called EsArCost, which can locate the reasons for architecture erosion and estimate the repair cost of each erosion problem. To this end, EsArCost detects multi-level changes of software architecture and calculates the architecture erosion degree, then locates which changed codes cause architecture erosion. EsArCost further calculates the full slice of each erosion problem to estimate the difficulty and repair costs. We evaluate our approach on small and large open source programs, and the experiment results indicate that EsArCost can effectively and efficiently estimate repair costs.
Authors
I am an author on this paper
Click your name to claim this paper and add it to your profile.
Reviews
Recommended
No Data Available