Efficient Static Analyses to Identify Opportunities for Replacing Type Code with Subclass and State
Identification of potential refactoring opportunities is an important step in the refactoring process. In large systems, manual identification of useful refactoring opportunities requires a lot of effort and time; therefore, there is a need for automatic identification. However, this problem has not yet been addressed well for many non-trivial refactorings that highly improve code quality. Two such non-trivial, yet popular refactorings are “Replace Type Code with Subclass” (SC) and “Replace Type Code with State” (ST) refactorings. In this thesis,we present a formal definition of control-fields which forms the basis for the identification of SC/ST refactoring opportunities. We present novel static analyses to efficiently identify SC and ST refactoring opportunities.We have implemented our approach in a tool called Auto-SCST and evaluated its effectiveness on open-source Java applications.
Tue 6 Nov
|13:30 - 14:15|
Jyothi VeduradaIIT Madras
|14:15 - 15:00|
Jacob HughesKing's College London