Entropy Guided Spectrum Based Bug Localization Using Statistical Language Model

02/20/2018
by   Saikat Chakraborty, et al.
0

Locating bugs is challenging but one of the most important activities in software development and maintenance phase because there are no certain rules to identify all types of bugs. Existing automatic bug localization tools use various heuristics based on test coverage, pre-determined buggy patterns, or textual similarity with bug report, to rank suspicious program elements. However, since these techniques rely on information from single source, they often suffer when the respective source information is inadequate. For instance, the popular spectrum based bug localization may not work well under poorly written test suite. In this paper, we propose a new approach, EnSpec, that guides spectrum based bug localization using code entropy, a metric that basically represents naturalness of code derived from a statistical language model. Our intuition is that since buggy code are high entropic, spectrum based bug localization with code entropy would be more robust in discriminating buggy lines vs. non-buggy lines. We realize our idea in a prototype, and performed an extensive evaluation on two popular publicly available benchmarks. Our results demonstrate that EnSpec outperforms a state-of-the-art spectrum based bug localization technique.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/07/2022

Online Adaptable Bug Localization for Rapidly Evolving Software

Bug localization aims to reduce debugging time by recommending program e...
research
02/27/2018

Network-Clustered Multi-Modal Bug Localization

Developers often spend much effort and resources to debug a program. To ...
research
05/28/2019

Deep Learning for Bug-Localization in Student Programs

Providing feedback is an integral part of teaching. Most open online cou...
research
10/01/2018

Doric: Foundations for Statistical Fault Localisation

To fix a software bug, you must first find it. As software grows in size...
research
12/15/2021

XCheck: a Simple, Effective and Extensible Bug Finder using micro-grammar

We propose a simple and effective bug finder, XCheck, which is a proof o...
research
12/11/2020

WITCHER : Detecting Crash Consistency Bugs in Non-volatile Memory Programs

The advent of non-volatile main memory (NVM) enables the development of ...
research
07/21/2022

BigIssue: A Realistic Bug Localization Benchmark

As machine learning tools progress, the inevitable question arises: How ...

Please sign up or login with your details

Forgot password? Click here to reset