Refactoring Effect Estimation Based on Complexity Metrics
Yoshiki Higo, Yoshihiro Matsumoto, Shinji Kusumoto, Katsuro Inoue · Proceedings - Australian Software Engineering Conference/Proceedings · 2008
Refactoring is a set of operations to improve maintainability or understandability or other attributes of a software system without changing the external behavior of it, and it is getting much attention recently. However it is difficult to perform appropriate refactorings since the impact of refactoring should justify the cost. Therefore, before a refactoring is really performed, the effect and the cost of it should be estimated. The estimation makes it possible for us to adequately assess whether each refactoring should be performed or not. This paper shows that it is difficult for developers to perform appropriate refactorings, and proposes a method estimating refactoring effect. The method has been implemented as a software tool, and a case study was conducted with it. The result of the case study showed that the estimation of the tool helped a developer of the target software system to perform an appropriate refactoring.