Repairing Crashes in Android Apps

Created by W.Langdon from gp-bibliography.bib Revision:1.4504

  author =       "Shin Hwei Tan and Zhen Dong and Xiang Gao and 
                 Abhik Roychoudhury",
  title =        "Repairing Crashes in {Android} Apps",
  booktitle =    "40th International Conference on Software
  year =         "2018",
  editor =       "Marsha Chechik and Mark Harman",
  pages =        "187--198",
  address =      "Gothenburg, Sweden",
  month =        "27 " # may # "-3 " # jun,
  publisher =    "ACM",
  keywords =     "genetic algorithms, genetic programming, mobile
                 computing, Software, Automatic programming, Software
                 testing and debugging, Dynamic analysis, Automated
                 repair, APR, Android apps, Crash, SBSE",
  isbn13 =       "978-1-4503-5638",
  URL =          "",
  URL =          "",
  URL =          "",
  DOI =          "doi:10.1145/3180155.3180243",
  size =         "12 pages",
  abstract =     "Android apps are omnipresent, and frequently suffer
                 from crashes leading to poor user experience and
                 economic loss. Past work focused on automated test
                 generation to detect crashes in Android apps. However,
                 automated repair of crashes has not been studied. In
                 this paper, we propose the first approach to
                 automatically repair Android apps, specifically we
                 propose a technique for fixing crashes in Android apps.
                 Unlike most test-based repair approaches, we do not
                 need a test-suite; instead a single failing test is
                 meticulously analyzed for crash locations and reasons
                 behind these crashes. Our approach hinges on a careful
                 empirical study which seeks to establish common
                 root-causes for crashes in Android apps, and then
                 distills the remedy of these root-causes in the form of
                 eight generic transformation operators. These operators
                 are applied using a search-based repair framework
                 embodied in our repair tool Droix. We also prepare a
                 benchmark DroixBench capturing reproducible crashes in
                 Android apps. Our evaluation of Droix on DroixBench
                 reveals that the automatically produced patches are
                 often syntactically identical to the human patch, and
                 on some rare occasion even better than the human patch
                 (in terms of avoiding regressions). These results
                 confirm our intuition that our proposed transformations
                 form a sufficient set of operators to patch crashes in
  notes =        "p193 GenProg, Google Nexus 5x emulator

                 2018 HUMIES


Genetic Programming entries for Shin Hwei Tan Zhen Dong Xiang Gao Abhik Roychoudhury