Abstract

Change-prone classes or modules are defined as software components in the source code which are likely to change in the future. Change-proneness prediction are useful to the maintenance team as they can optimize and focus their testing resources on the modules which have a higher likelihood of change. The quality of change-proneness prediction model can be best assessed by the use of software metrics that are considered to design the prediction model. In this work, 62 software metrics with four metrics dimensions, including 7 size metrics, 18 cohesion metrics, 20 coupling metrics, and 17 inheritance metrics are considered to develop a model for predicting change-proneness modules. Since the performance of the change-proneness model depends on the source code metrics, they are used as input of the change-proneness model. We also considered five different types of feature selection techniques to remove irrelevant feature and select best set of features.The effectiveness of these set of source code metrics are evaluated using eight different machine learning algorithms and two ensemble techniques. Experimental results demonstrates that the model developed by considering selected set of source code metrics by feature selection technique as input achieves better results as compared to considering all source code metrics. The experimental results also ravel that the change-proneness model developed by using coupling metrics achieved better performance as compared other dimension metrics such as size metrics, cohesion metrics, and inheritance metrics.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call