Loading [a11y]/accessibility-menu.js
Predicting Bug Severity Using Machine Learning and Ensemble Learning Techniques | IEEE Conference Publication | IEEE Xplore

Predicting Bug Severity Using Machine Learning and Ensemble Learning Techniques


Abstract:

Software quality can be adversely affected by various bugs in the system. Bug identification and fixing are part of every software development life cycle. However, in pra...Show More

Abstract:

Software quality can be adversely affected by various bugs in the system. Bug identification and fixing are part of every software development life cycle. However, in practice, large and long-lived systems may encounter an enormous number of bugs during their lifetime. Additionally, identifying and fixing a large number of software bugs requires a vast amount of allocated resources that may hinder the software budget. Thus, proper management including bug classification and prioritization is needed. Therefore, this paper employs modern Machine Learning techniques to help developers identify and classify bugs based on various factors including their severity level. Six different datasets are used to evaluate the proposed ML models. Features are extracted from bug descriptions using natural language processing techniques like TF-IDF. Evaluated models include K-Nearest Neighbors, Naïve Bayes, Neural Networks, Random Forest, Support Vector Machine, and various ensemble learning methods. All candidate models are evaluated based on their accuracy for each of the used datasets. Results show that the Neural Networks model exceeds on all six datasets, achieving an accuracy that ranges from 93% to 95%. It also exceeds in other measures as well including precision, recall, and F1-Score. These results indicate that the proposed method performs satisfactorily when identifying bugs in source code.
Date of Conference: 21-23 November 2023
Date Added to IEEE Xplore: 04 December 2023
ISBN Information:

ISSN Information:

Conference Location: Irbid, Jordan

I. Introduction

Software quality is an essential factor in the success of any software project. A defect in a software system is called a bug, these bugs can be caused by various errors or faults in the system. The faulty software is called buggy. Software bugs are known for their negative impact on various software quality attributes and non-functional requirements [1].

Contact IEEE to Subscribe

References

References is not available for this document.