Share:


Just-In-Time Software Defect Prediction using a deep learning-based model

Abstract

The increase in software complexity, driven by technological developments and user demands, has created major challenges for companies in Software Quality Assurance. Companies seek efficient ways to identify and mitigate defects, recognizing that they cause high financial costs and other problems with negative impacts on business. Among defect prediction approaches, Just-In-Time Software Defect Prediction has received increased attention from software industry professionals in recent years. This technique aims to identify and treat defects early, to improve the quality of the software development cycle. This study proposes a Deep Learning-based approach for Just-In-Time Software Defect Prediction using a large dataset of historical data from several popular software projects. The Deep Learning model was trained to identify defects by analyzing the software metrics provided by the dataset. The model achieved an accuracy of 82.08% in its predictions, and it was possible to determine the most relevant metrics for its conclusions through interpretability techniques. The results obtained demonstrate the potential of Just-In-Time Software Defect Prediction as a tool for improving software quality and encouraging the development of new studies and improvements in this area of research. 


First published online 17 January 2025

Keyword : software defect prediction, machine learning, deep learning

How to Cite
Dos Santos, R. A. (2024). Just-In-Time Software Defect Prediction using a deep learning-based model. New Trends in Computer Sciences, 2(2), 91–100. https://doi.org/10.3846/ntcs.2024.22274
Published in Issue
Dec 31, 2024
Abstract Views
24
PDF Downloads
11
Creative Commons License

This work is licensed under a Creative Commons Attribution 4.0 International License.

References

Cabral G. G., Minku, L. L., Oliveira, A. L. I., Pessoa, D. A., & Tabassum, S. (2023). An investigation of online and offline learning models for online just-in-time software defect prediction. Empirical Software Engineering, 28(1), Article 121. https://doi.org/10.1007/s10664-023-10335-6

Goyal, J., & Sinha, R. R. (2023). Machine learning-based defect prediction for software efficiency. International Journal of Intelligent Systems and Applications in Engineering, 11(6s), 257–266.

Kaur, G., Pruthi, J., & Gandhi, P. (2023). Machine learning based software fault prediction models. Karbala International Journal of Modern Science, 9(2), Article 9. https://doi.org/10.33640/2405-609X.3297

Keshavarz, H., & Nagappan, M. (2022). ApacheJIT: A large dataset for just-in-time defect prediction. In Proceedings of the 19th International Conference on Mining Software Repositories (pp. 191–195). Association for Computing Machinery. https://doi.org/10.1145/3524842.3527996

Khalid, A., Badshah, G., Ayub, N., Shiraz, M., & Ghouse, M. (2023). Software defect prediction analysis using machine learning techniques. Sustainability, 15(6), Article 5517. https://doi.org/10.3390/su15065517

Krasner, H. (2022). The cost of poor software quality in the US: A 2022 report. CISQ. https://www.it-cisq.org

Lamba, T., Kavita, & Mishra, A. K. (2019). Optimal machine learning model for software defect prediction. International Journal of Intelligent Systems and Applications, 11(2), 36–48. https://doi.org/10.5815/ijisa.2019.02.05

Li, Z., Jing, X.-Y., & Zhu, X. (2018). Progress on approaches to software defect prediction. IET Software, 12(3), 161–175. https://doi.org/10.1049/iet-sen.2017.0148

Lundberg S. M., & Lee S. (2017). A unified approach to interpreting model predictions. arXiv. https://doi.org/10.48550/arXiv.1705.07874

Mahbub, P., Shuvo, O., & Masudur Rahman, M. (2023). Defectors: A large, diverse Python dataset for defect prediction. In 2023 IEEE/ACM 20th International Conference on Mining Software Repositories (pp. 393–397). IEEE. https://doi.org/10.1109/MSR59073.2023.00085

Nevendra, M., & Singh, P. (2021). Software defect prediction using deep learning. Journal of Applied Sciences, 18(10), 173–189. https://doi.org/10.12700/APH.18.10.2021.10.9

Rathore, S. S., & Kumar, S. (2019). A study on software fault prediction techniques. Artificial Intelligence Review, 51(1), 255–327. https://doi.org/10.1007/s10462-017-9563-5

Santos, G., Figueiredo, E., Veloso, A., Viggiato, M., & Ziviani, N. (2020). Predicting software defects with explainable machine learning. In 19th Brazilian Symposium on Software Quality (Article 18). Association for Computing Machinery. https://doi.org/10.1145/3439961.3439979

Shah, M., & Pujara, N. (2020). Software defects prediction using machine learning. arXiv. https://doi.org/10.48550/arXiv.2011.00998

Sirshar, M., Mir, H., Amir, K., & Zainab, L. (2019). Comparative analysis of software defect prediction techniques. Preprints. https://www.preprints.org/manuscript/201912.0075/v1

Thota, M. K., Shajin, F. H., & Rajesh, P. (2020). Survey on software defect prediction techniques. International Journal of Applied Science and Engineering, 17(4), 331–344. https://doi.org/10.6703/IJASE.202012_17(4).331

Zhao, Y., Damevski, K., & Chen, H. (2023). A Systematic survey of just-in-time software defect prediction. ACM Computing Surveys, 55(10), Article 201. https://doi.org/10.1145/3567550