Improving Software Maintainability Through Refactoring- An Empirical Study
Refactoring is the process of changing the internal structure of the existing code of the software to improve the
design without affecting its external behavior. In this paper, we empirically examine the impact of Refactoring on Software
Maintenance using Object Oriented (OO) Metric. To carry out the empirical study, the source code of an open source project
ORDrumbox hosted by Sourceforge.net is obtained. Five refactoring techniques Extract Class, Use Super Type, Extract
Method, Extract Super Class and Extract Interface are applied and their effects are observed. OO Metrics of the software are
collected before and after the application of refactoring and Change in their values are further mapped to maintainability. This
helps us in determining how these refactoring techniques affect maintainability. This paper reflects that refactoring
techniques improve maintainability with a long term planning by improving the design of the code. This paper will help the
software professionals in taking the decision regarding which refactoring method should be applied and when it should be
applied, in order to optimize the cost involved in the software system design.
Keywords- Quality Improvement, Object Oriented Metrics, Refactoring, Software Maintainability, Software Measurement.