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