Skip to main navigation Skip to search Skip to main content

Fault localization through evaluation sequences

  • Zhenyu Zhang
  • , Bo Jiang
  • , W. K. Chan
  • , T. H. Tse
  • , Xinming Wang

Research output: Journal Publications and ReviewsRGC 21 - Publication in refereed journalpeer-review

Abstract

Predicate-based statistical fault-localization techniques find fault-relevant predicates in a program by contrasting the statistics of the evaluation results of individual predicates between failed runs and successful runs. While short-circuit evaluations may occur in program executions, treating predicates as atomic units ignores this fact, masking out various types of useful statistics on dynamic program behavior. In this paper, we differentiate the short-circuit evaluations of individual predicates on individual program statements, producing one set of evaluation sequences per predicate. We then investigate experimentally the effectiveness of using these sequences to locate faults by comparing existing predicate-based techniques with and without such differentiation. We use both the Siemens program suite and four real-life UNIX utility programs as our subjects. The experimental results show that the proposed use of short-circuit evaluations can, on average, improve predicate-based statistical fault-localization techniques while incurring relatively small performance overhead. © 2009 Elsevier Inc. All rights reserved.
Original languageEnglish
Pages (from-to)174-187
JournalJournal of Systems and Software
Volume83
Issue number2
DOIs
Publication statusPublished - Feb 2010

Research Keywords

  • Boolean expression
  • Evaluation sequence
  • Fault localization
  • Predicate

Fingerprint

Dive into the research topics of 'Fault localization through evaluation sequences'. Together they form a unique fingerprint.

Cite this