Refactorings are behavior-preserving program transformations that automate design evolution in object-oriented applications. Three kinds of design evolution are: schema transformat...
Despite the automated refactoring support provided by today's IDEs many program transformations that are easy to conceptualize-such as improving the implementation of a desig...
Improving the structure of code can help developers work with a software system more efficiently and more consistently. To aid developers in re-structuring the implementation of c...
In restructuring legacy code it may be useful to introduce a design pattern in order to add clarity to the system and thus facilitate further program evolution. We show that aspec...
Modern software development is driven by many critical forces. Among them are fast deployment requirements, a code base adaptable to new technologies, easy-to-maintain code, and lo...