Root cause prediction based on bug reports
Thomas Hirsch, Birgit Hofer

TL;DR
This paper introduces a supervised machine learning method using natural language processing to predict the root causes of bug reports, aiding developers in debugging by classifying bugs into semantic, memory, or concurrency categories.
Contribution
It presents a new benchmark dataset of bug reports and evaluates classifiers, achieving high precision and recall in root cause prediction.
Findings
Linear Support Vector Machines achieved 0.74 precision.
The dataset of 369 bug reports is publicly available.
The approach improves bug diagnosis efficiency.
Abstract
This paper proposes a supervised machine learning approach for predicting the root cause of a given bug report. Knowing the root cause of a bug can help developers in the debugging process - either directly or indirectly by choosing proper tool support for the debugging task. We mined 54755 closed bug reports from the issue trackers of 103 GitHub projects and applied a set of heuristics to create a benchmark consisting of 10459 reports. A subset was manually classified into three groups (semantic, memory, and concurrency) based on the bugs' root causes. Since the types of root cause are not equally distributed, a combination of keyword search and random selection was applied. Our data set for the machine learning approach consists of 369 bug reports (122 concurrency, 121 memory, and 126 semantic bugs). The bug reports are used as input to a natural language processing algorithm. We…
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.
