An Interactive Debugging Framework with Heuristic Graph

Xiaolin Ju,Xiang Chen,Shujuan Jiang,Junyan Qian
DOI: https://doi.org/10.1109/SATE.2017.14
2017-01-01
Abstract:Many fault localization approaches such as spectrum based fault localization(SBFL) generated a fault localization report based on which the programmer identifies the faults from corrected program entities. Unfortunately, the bug identification is quite tedious due to lack of sufficient context information. Furthermore, in the process of continuous searching for errors, the programmer's previous judgment makes no contribution for improving the efficiency of fault locating report. In this paper, we proposed an interactive debugging framework on which the programmer can iteratively identify faults with visualized heuristic graph. We first analyze the type of running information that is helpful for programmer's fault identification. The heuristic information is collected by program instrument, and modeled by program slicing techniques. We organized this information in the DOT format for visualization. In addition, we proposed an algorithm which can dynamically adjust the fault locating report using forward and backward slicing techniques based on the feedback of programmers. Furthermore, we proposed an enhanced algorithm that can adjust the fault locating report based on more than one feedback from programmers. Since the goal of fault-locating is to identify and fix faults in a program, our framework is more practical in program debugging with visualizing information.
What problem does this paper attempt to address?