A quality enhancement through defect reduction using refactoring operation

Anuradha Chug, Monika Gupta · 2017

Refactoring is widely used technique to enhance overall quality of an existing software system by changing its internal structure without modifying its external behavior. Although, it is difficult to implement the refactoring manually, it helps to reduce the defects in the existing software. Three main types of design defects are investigated in the current study namely blob, Spaghetti Code (SC) and Functional Decomposition (FD) by applying specific rule which are based on the combination of Object-Oriented (OO) metrics and their threshold values. Further, study also suggests a novel approach to minimize the defects and improve the quality of software system by applying specific refactoring operations into the code. Five large open source projects JDATEPICKER, JXLS, JTDS, JFREECHART and JHOTDRAW were used for the empirical evaluation of the suggested approach. Results show that the refactoring is very effective for reducing the probability of the number of defects in existing software. We found that 20%, 16%, 4%, 14% and 5% defects are reduced in JDATEPICKER, JXLS, JTDS, JFREECHART and JHOTDRAW software respectively. The results produces in this study are useful for the developers to identify the defect prone areas in the software and reduce the probability of occurrence of defects in source code before its release.

Read the paper · More papers on PaperTik