Prediction of Software Defects for Quality Assurance and Improvement Based on Machine Learning Methods
Software defect prediction (SDP) is increasingly vital in today’s software development landscape, where delivering high-quality products on time is essential. Defects in software can lead to significant financial losses and damage to reputations; hence, identifying error-prone modules early in the development lifecycle is crucial. This research aims to leverage machine learning (ML) models to enhance software quality and minimize testing costs. This methodology begins with data collection from the CM1 dataset in the PROMISE repository, followed by comprehensive preprocessing steps, including addressing missing values, removing duplicate entries, and detecting outliers. Feature selection and Z-score normalization further refine the dataset. Then, implement a variety of ML algorithms-Extreme Gradient Boosting (XGBoost), Naïve Bayes (NB), RF, and ANN-to evaluate their efficacy in SDP. Performance metrics such as precision, recall, accuracy, and F1score are employed for assessment. These findings indicate that XGBoost achieves the highest accuracy of $\mathbf{9 8 \%}$, outperforming other models. This study makes a substantial contribution to software engineering by showing how ML approaches may improve software quality assurance procedures and by giving practitioners practical insights to build defect prediction systems.
Authors
- Kishan Patel (ORCID: https://orcid.org/0000-0002-5693-6831)
- Sandeep Gupta (ORCID: https://orcid.org/0000-0003-4866-5303)
Publication Details
- Published
- 2024-11-28
- DOI
- https://doi.org/10.1109/icaiccit64383.2024.10912382
- Citations
- 2
- Primary Topic
- Software Reliability and Analysis Research
- Type
- article
- Field-Weighted Citation Impact
- 0.97