Root cause prediction based on bug reports

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review


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.
Original languageEnglish
Title of host publicationProceedings - 2020 IEEE 31st International Symposium on Software Reliability Engineering Workshops, ISSREW 2020
EditorsMarco Vieira, Henrique Madeira, Nuno Antunes, Zheng Zheng
PublisherIEEE Computer Society Conference Publishing Services
Number of pages6
ISBN (Electronic)9781728198705
Publication statusPublished - Oct 2020
Event31st International Symposium on Software Reliability Engineering: 2020 ISSRE - Virtual, Coimbra, Portugal
Duration: 12 Oct 202012 Oct 2020


Conference31st International Symposium on Software Reliability Engineering
Abbreviated titleISSRE 2020
CityVirtual, Coimbra
Internet address


  • bug report
  • bug benchmark
  • root cause prediction

ASJC Scopus subject areas

  • Software
  • Safety, Risk, Reliability and Quality

Fields of Expertise

  • Information, Communication & Computing

Treatment code (Nähere Zuordnung)

  • Basic - Fundamental (Grundlagenforschung)


Dive into the research topics of 'Root cause prediction based on bug reports'. Together they form a unique fingerprint.

Cite this