Root cause prediction based on bug reports

by   Thomas Hirsch, et al.

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 evaluated the performance of several classifiers for predicting the root causes for the given bug reports. Linear Support Vector machines achieved the highest mean precision (0.74) and recall (0.72) scores. The created bug data set and classification are publicly available.



There are no comments yet.


page 1


Not All Bugs Are the Same: Understanding, Characterizing, and Classifying the Root Cause of Bugs

Modern version control systems such as Git or SVN include bug tracking m...

Scalable Statistical Root Cause Analysis on App Telemetry

Despite engineering workflows that aim to prevent buggy code from being ...

Identifying non-natural language artifacts in bug reports

Bug reports are a popular target for natural language processing (NLP). ...

Recommending Bug-fixing Comments from Issue Tracking Discussions in Support of Bug Repair

In practice, developers search for related earlier bugs and their associ...

Revelio: ML-Generated Debugging Queries for Distributed Systems

A major difficulty in debugging distributed systems lies in manually det...

Feature Engineering for Scalable Application-Level Post-Silicon Debugging

We present systematic and efficient solutions for both observability enh...

Cause Identification from Aviation Safety Incident Reports via Weakly Supervised Semantic Lexicon Construction

The Aviation Safety Reporting System collects voluntarily submitted repo...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.