Not All Bugs Are the Same: Understanding, Characterizing, and Classifying the Root Cause of Bugs
Gemma Catolino, Fabio Palomba, Andy Zaidman, Filomena, Ferrucci

TL;DR
This paper analyzes bug reports from popular projects to create a taxonomy of bug root causes and develops an automated classifier that accurately categorizes bugs based on their root causes, aiding developers in understanding issues faster.
Contribution
It introduces a taxonomy of nine common bug root causes and presents a machine learning model for automatic bug classification, improving bug understanding efficiency.
Findings
Identified nine main bug root causes across projects
Developed a classification model with 64% F-Measure
Model achieved 74% AUC-ROC overall
Abstract
Modern version control systems such as Git or SVN include bug tracking mechanisms, through which developers can highlight the presence of bugs through bug reports, i.e., textual descriptions reporting the problem and what are the steps that led to a failure. In past and recent years, the research community deeply investigated methods for easing bug triage, that is, the process of assigning the fixing of a reported bug to the most qualified developer. Nevertheless, only a few studies have reported on how to support developers in the process of understanding the type of a reported bug, which is the first and most time-consuming step to perform before assigning a bug-fix operation. In this paper, we target this problem in two ways: first, we analyze 1,280 bug reports of 119 popular projects belonging to three ecosystems such as Mozilla, Apache, and Eclipse, with the aim of building a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Advanced Malware Detection Techniques · Software Testing and Debugging Techniques
