Abstract
Feature selection (FS) is a feasible solution for mitigating high dimensionality problem, and many FS methods have been proposed in the context of software defect prediction (SDP). Moreover, many empirical studies on the impact and effectiveness of FS methods on SDP models often lead to contradictory experimental results and inconsistent findings. These contradictions can be attributed to relative study limitations such as small datasets, limited FS search methods, and unsuitable prediction models in the respective scope of studies. It is hence critical to conduct an extensive empirical study to address these contradictions to guide researchers and buttress the scientific tenacity of experimental conclusions. In this study, we investigated the impact of 46 FS methods using Naïve Bayes and Decision Tree classifiers over 25 software defect datasets from 4 software repositories (NASA, PROMISE, ReLink, and AEEEM). The ensuing prediction models were evaluated based on accuracy and AUC values. Scott–KnottESD and the novel Double Scott–KnottESD rank statistical methods were used for statistical ranking of the studied FS methods. The experimental results showed that there is no one best FS method as their respective performances depends on the choice of classifiers, performance evaluation metrics, and dataset. However, we recommend the use of statistical-based, probability-based, and classifier-based filter feature ranking (FFR) methods, respectively, in SDP. For filter subset selection (FSS) methods, correlation-based feature selection (CFS) with metaheuristic search methods is recommended. For wrapper feature selection (WFS) methods, the IWSS-based WFS method is recommended as it outperforms the conventional SFS and LHS-based WFS methods.
Highlights
Software defect prediction (SDP) is an essential procedure in software engineering
High dimensionality is one of such primary issues that undermine the quality of a given dataset, which leads to poor predictive models
An extended benchmark study was conducted to investigate the impact of 46 Feature selection (FS) methods over 25 defect datasets from four major repositories on the predictive performance of software defect prediction (SDP) models
Summary
Software defect prediction (SDP) is an essential procedure in software engineering. It involves the deployment of machine learning (ML) methods on software features or metrics derived from softwareSymmetry 2020, 12, 1147; doi:10.3390/sym12071147 www.mdpi.com/journal/symmetrySymmetry 2020, 12, 1147 systems repositories to predict the quality and reliability of a software system [1,2]. Software defect prediction (SDP) is an essential procedure in software engineering It involves the deployment of machine learning (ML) methods on software features or metrics derived from software. Software engineers are expected to develop high quality and reliable software systems with or within limited resources [5,6,7]. Modern software systems are fundamentally massive and convolute with multiple and inter-related modules or components. These software systems are often periodically updated and upgraded with new features or functionalities based on new system requirements or software users demands. Some existing studies pointed out that the poor predictive performances of SDP models are often caused by the high dimensionality of software features. The existence of irrelevant and redundant software metrics has negative effects on SDP model performance [12,13,14,15,16,17]
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.