Machine learning techniques for software bug prediction: a systematic review

The goal of software bug prediction is to identify the software modules that will have the likelihood to get bugs by using some fundamental project resources before the real testing starts. Due to high cost in correcting the detected bugs, it is advisable to start predicting bugs at the early stage...

Full description

Bibliographic Details
Main Authors: Saharudin, Syahana Nur’Ain, Koh, Tieng Wei, Kew, Si Na
Format: Article
Language:English
Published: Science Publication 2020
Online Access:http://psasir.upm.edu.my/id/eprint/86609/
http://psasir.upm.edu.my/id/eprint/86609/1/Machine%20learning%20techniques.pdf
_version_ 1848860244339326976
author Saharudin, Syahana Nur’Ain
Koh, Tieng Wei
Kew, Si Na
author_facet Saharudin, Syahana Nur’Ain
Koh, Tieng Wei
Kew, Si Na
author_sort Saharudin, Syahana Nur’Ain
building UPM Institutional Repository
collection Online Access
description The goal of software bug prediction is to identify the software modules that will have the likelihood to get bugs by using some fundamental project resources before the real testing starts. Due to high cost in correcting the detected bugs, it is advisable to start predicting bugs at the early stage of development instead of at the testing phase. There are many techniques and approaches that can be used to build the prediction models, such as machine learning. This technique is widely used nowadays because it can give accurate results and analysis. Therefore, we decided to perform a review of past literature on software bug prediction and machine learning so that we can understand better about the process of constructing the prediction model. Not only we want to see the machine learning techniques that past researchers used, we also assess the datasets, metrics and performance measures that are used during the development of the models. In this study, we have narrowed down to 31 main studies and six types of machine learning techniques have been identified. Two public datasets are found to be frequently used and object-oriented metrics are the highly chosen metrics for the prediction model. As for the performance measure, both graphical and numerical measures are often used to evaluate the performance of the models. From the results, we conclude that the machine learning technique can predict the bug, but there are not many applications in this area that exist nowadays. There are a few challenges in constructing the prediction model. Thus, more studies need to be carried out so that a well-formed result is obtained. We also provide a recommendation for future research based on the results we got from this study.
first_indexed 2025-11-15T12:42:09Z
format Article
id upm-86609
institution Universiti Putra Malaysia
institution_category Local University
language English
last_indexed 2025-11-15T12:42:09Z
publishDate 2020
publisher Science Publication
recordtype eprints
repository_type Digital Repository
spelling upm-866092021-10-11T07:44:37Z http://psasir.upm.edu.my/id/eprint/86609/ Machine learning techniques for software bug prediction: a systematic review Saharudin, Syahana Nur’Ain Koh, Tieng Wei Kew, Si Na The goal of software bug prediction is to identify the software modules that will have the likelihood to get bugs by using some fundamental project resources before the real testing starts. Due to high cost in correcting the detected bugs, it is advisable to start predicting bugs at the early stage of development instead of at the testing phase. There are many techniques and approaches that can be used to build the prediction models, such as machine learning. This technique is widely used nowadays because it can give accurate results and analysis. Therefore, we decided to perform a review of past literature on software bug prediction and machine learning so that we can understand better about the process of constructing the prediction model. Not only we want to see the machine learning techniques that past researchers used, we also assess the datasets, metrics and performance measures that are used during the development of the models. In this study, we have narrowed down to 31 main studies and six types of machine learning techniques have been identified. Two public datasets are found to be frequently used and object-oriented metrics are the highly chosen metrics for the prediction model. As for the performance measure, both graphical and numerical measures are often used to evaluate the performance of the models. From the results, we conclude that the machine learning technique can predict the bug, but there are not many applications in this area that exist nowadays. There are a few challenges in constructing the prediction model. Thus, more studies need to be carried out so that a well-formed result is obtained. We also provide a recommendation for future research based on the results we got from this study. Science Publication 2020-11 Article PeerReviewed text en http://psasir.upm.edu.my/id/eprint/86609/1/Machine%20learning%20techniques.pdf Saharudin, Syahana Nur’Ain and Koh, Tieng Wei and Kew, Si Na (2020) Machine learning techniques for software bug prediction: a systematic review. Journal of Computer Science, 16 (11). 1558 - 1569. ISSN 1549-3636; ESSN: 1552-6607 https://thescipub.com/abstract/jcssp.2020.1558.1569 10.3844/jcssp.2020.1558.1569
spellingShingle Saharudin, Syahana Nur’Ain
Koh, Tieng Wei
Kew, Si Na
Machine learning techniques for software bug prediction: a systematic review
title Machine learning techniques for software bug prediction: a systematic review
title_full Machine learning techniques for software bug prediction: a systematic review
title_fullStr Machine learning techniques for software bug prediction: a systematic review
title_full_unstemmed Machine learning techniques for software bug prediction: a systematic review
title_short Machine learning techniques for software bug prediction: a systematic review
title_sort machine learning techniques for software bug prediction: a systematic review
url http://psasir.upm.edu.my/id/eprint/86609/
http://psasir.upm.edu.my/id/eprint/86609/
http://psasir.upm.edu.my/id/eprint/86609/
http://psasir.upm.edu.my/id/eprint/86609/1/Machine%20learning%20techniques.pdf