Title :
Constraint-Based Program Debugging Using Data Structure Repair
Author :
Malik, Muhammad Zubair ; Siddiqi, J.H. ; Khurshid, Sarfraz
Author_Institution :
Dept. of Electr. & Comput. Eng., Univ. of Texas at Austin, Austin, TX, USA
Abstract :
Developers have used data structure repair over the last few decades as an effective means to recover on-the-fly from errors in program state. Traditional repair techniques were based on dedicated repair routines, whereas more recent techniques have used invariants that describe desired structural properties as the basis for repair. All repair techniques are designed with one primary goal: run-time error recovery. However, the actions that any such technique performs to repair an erroneous program state are meant to produce the effect of the actions of a (hypothetical) correct program. The key insight in this paper is that repair actions on the program state can guide debugging of code (when the erroneous program execution is due to a fault in the program and not an external event).This paper presents an approach that abstracts concrete repair actions that a routine performs to repair an erroneous state into a sequence of program statements that perform the same actions using variables visible in the scope of the faulty code. Thus, appending the generated statements to the original code is akin to performing the repair from within the program. Our implementation uses the Juzi data structure repair tool as an enabling technology. Experimental results using a library data structure as well as two applications demonstrate the effectiveness of our approach in enabling repair of faulty code.
Keywords :
data structures; program debugging; software libraries; system recovery; Juzi data structure repair tool; code debugging; constraint-based program debugging; faulty code repairing; library data structure; run-time error recovery; structural property; Conferences; Software testing; Automated Debugging; Data Structure Repair; Error Recovery; Fault Localization; Program Repair;
Conference_Titel :
Software Testing, Verification and Validation (ICST), 2011 IEEE Fourth International Conference on
Conference_Location :
Berlin
Print_ISBN :
978-1-61284-174-8
Electronic_ISBN :
978-0-7695-4342-0
DOI :
10.1109/ICST.2011.65