A study of effectiveness of dynamic slicing in locating real faults

  • Authors:
  • Xiangyu Zhang;Neelam Gupta;Rajiv Gupta

  • Affiliations:
  • Department of Computer Science, The University of Arizona, Tucson, USA 85721;Department of Computer Science, The University of Arizona, Tucson, USA 85721;Department of Computer Science, The University of Arizona, Tucson, USA 85721

  • Venue:
  • Empirical Software Engineering
  • Year:
  • 2007

Quantified Score

Hi-index 0.01

Visualization

Abstract

Dynamic slicing algorithms have been considered to aid in debugging for many years. However, as far as we know, no detailed studies on evaluating the benefits of using dynamic slicing for locating real faults present in programs have been carried out. In this paper we study the effectiveness of fault location using dynamic slicing for a set of real bugs reported in some widely used software programs. Our results show that of the 19 faults studied, 12 faults were captured by data slices, 7 required the use of full slices, and none of them required the use of relevant slices. Moreover, it was observed that dynamic slicing considerably reduced the subset of program statements that needed to be examined to locate faulty statements. Interestingly, we observed that all of the memory bugs in the faulty versions were captured by data slices. The dynamic slices that captured faulty code included 0.45 to 63.18% of statements that were executed at least once.