Identifying refactoring opportunities: a systematic literature review…
Identifying refactoring opportunities: a systematic literature review
refactoring opportunities for removing code smells
different to other lit reviews cos about identifying code smells for purpose of refactoring
What are the refactoring activities in the literature?
Pull up method
Form template method
What are the techniques used to identify refactoring opportunities?
using clustering of similars for distances
What are the approaches used for evaluating the techniques?
by comparing quality before and after refactoring
by using programmer's intuition to test resulting code after refactoring
by mutating systems so that they need refactoring
by comparing code that used the technique and one that didn't
by observing behaviour before and after refactoring (ensuring it didn't change)
by showing their applicability to 1 or more system
gap between refactoring practice studied in research vs used in practice
metrics and quality oriented techniques are good cos flexible and strong relationship with software design
no study yet that uses the different techniques for same refactoring activity
application of techniques to different refactoring practices cos studies focus on only 1 refactoring practice
need more industry expertise included in studies
around 70% of refactoring activities suggested by Fowler have not been studied
need datasets with more programming languages cos java-dominant
need mix of industrial and open source code examined