kirancodes.me
To Proof Maintenance & Beyond!

Automated Code Refactoring upon Database-Schema Changes in Web Applications

Sophie Xie, Junwen Yang, Shan Lu

Abstract

Modern web applications manipulate a large amount of user data and undergo frequent data-schema changes. These changes bring up a unique refactoring task: updating application code to be consistent with data schema. Previous study and our own investigation show that this type of refactoring is error-prone and time-consuming for developers. This paper presents EvolutionSaver, a static code analysis and transformation tool that automates schema-related code refactoring and consistency checking. EvolutionSaver is implemented as an IDE plugin that works for both Rails and Django applications. The source code of EvolutionSaver is available on Github [1] and the plugin can be downloaded from Visual Studio Marketplace [2], with its tutorial available at https://www.youtube.com/watch?v=qBiMkLFIjbE and DOI 10.5281/zenodo.5276127.

BibTeX
@inproceedings{Xie-al:ASE21,
  author    = {Sophie Xie and
               Junwen Yang and
               Shan Lu},
  title     = {Automated Code Refactoring upon {Database-Schema} Changes in Web Applications},
  booktitle = {ASE},
  pages     = {1262--1265},
  publisher = {{IEEE}},
  year      = {2021},
}

Related papers