Title :
Database Refactoring: Lessons from the Trenches
Author_Institution :
HEC Montreal, Montreal, QC, Canada
Abstract :
Although database refactoring has been advocated as an important area of database development, little research has studied its implications. A small software development firm refactored a database related to an application that lets clients optimize their logistics processes. This project was based on the design of clear database development conventions and the need to package documentation in the database itself. The experience led to five key lessons learned: refactoring should be automated whenever possible, the database catalog is crucial, refactoring is easier when it´s done progressively, refactoring can help optimize an application and streamline its code base, and refactoring related to application development requires a complex skill set and must be applied sensibly. This article is part of a special issue on Refactoring.
Keywords :
database management systems; software maintenance; database development; database refactoring; software development; Code refractoring; Data models; Maintenance engineering; Servers; Software development; data description languages; data manipulation languages; database design; database evolution; database management; database refactoring; refactoring; relational databases; software development; software engineering; transaction processing;
Journal_Title :
Software, IEEE
DOI :
10.1109/MS.2015.131