DocumentCode :
492655
Title :
Juzi
Author :
Elkarablieh, Bassem ; Khurshid, Sarfraz
Author_Institution :
Univ. of Texas at Austin, Austin, TX
fYear :
2008
fDate :
10-18 May 2008
Firstpage :
855
Lastpage :
858
Abstract :
This paper describes Juzi, a tool for automatic repair of complex data structures. Juzi takes a Java class representing the data structure as well as a predicate method that specifies the structural integrity constraints as inputs. Juzi instruments its inputs and generates a new Java class which behaves similarly to the original class, yet automatically repairs itself when the structural integrity constraints are violated. Juzi implements a novel repair algorithm. Given a structure that violates its integrity constraints, Juzi performs a systematic search based on symbolic execution to repair the structure, i.e., mutate it such that the resulting structure satisfies the given constraints. Experiments on structures ranging from library classes to standalone applications, show that Juzi repairs complex structures while enabling programs to recover from erroneous executions caused by data structure corruptions.
Keywords :
Java; data structures; software maintenance; Java class; Juzi; complex data structures; repair algorithm; assertions; data structure repair; error recovery; symbolic execution; systematic search;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Engineering, 2008. ICSE '08. ACM/IEEE 30th International Conference on
Conference_Location :
Leipzig
ISSN :
0270-5257
Print_ISBN :
978-1-4244-4486-1
Electronic_ISBN :
0270-5257
Type :
conf
DOI :
10.1145/1368088.1368222
Filename :
4814209
Link To Document :
بازگشت