Software Defect Prediction Using Support Vector Machine
Software defect prediction is an essential task during the software development Lifecycle as it can help managers to identify the most defect-proneness modules. Thus, it can reduce the test cost and assign testing resources efficiently. Many classification methods can be used to determine if the software is defective or not. Support Vector Machine (SVM) has not been used extensively for such problems because of its instability when applied on different datasets and parameter settings. The main parameter that influences the accuracy is the choice of the kernel function. The use of kernel functions has not been studied thoroughly in previous papers. Therefore, this research examines the performance and accuracy of SVM with six different kernel functions. Various public datasets from the PROMISE project empirically validate our hypothesis. The results demonstrate that no kernel function can give stable performance across different experimental settings. In addition, the use of PCA as a feature reduction algorithm shows slight accuracy improvement over some datasets.
READ FULL TEXT