This project is studying dynamic characteristics of runs of faulty programs and designing promising dynamic analysis techniques to identify executed program statements where a fault lies, i.e. the fault candidate set. To narrow the set of statements in the fault candidate set, an array of automated dynamic analyses are being used in conjunction with each other. These analyses consider not only the failed run but also execution perturbations of this faulty run. The goal of this work is to focus the users attention on a small subset of statements in the fault candidate state. Identification of fault candidate set is based upon uncovering of two types of evidence: negative evidence and positive evidence. A negative evidence is considered as an indicator that leads to the conclusion that a value encountered during a failed program run is related to the program's failure. Positive evidence on the other hand indicates that some of the values computed during a failed run are in fact correct. Through a combination of negative and positive evidence we aim to produce a small fault candidate set. As part of this work we are identifying new sources of evidence. We are also carrying out a systematic integration of above dynamic analyses technology into a practical debugging environment.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Application #
0810906
Program Officer
Krishna Kant
Project Start
Project End
Budget Start
2008-01-01
Budget End
2011-08-31
Support Year
Fiscal Year
2008
Total Cost
$196,051
Indirect Cost
Name
University of California Riverside
Department
Type
DUNS #
City
Riverside
State
CA
Country
United States
Zip Code
92521