• 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