The Relationship between Depth of Inheritance and Refactoring: An Empirical Study of Eclipse Releases

N. Naiya, Steve Counsell, Tracy Hall · 2015

While numerous empirical studies have explored aspects of refactoring, an open research question still remaining is the extent to which refactoring and inheritance are related. In other words, is there a depth of inheritance where either the majority of refactorings are undertaken or specific refactorings have a propensity for being undertaken? The original purpose of inheritance was to allow data to be structured in a logical and easily comprehensible way. The question as to whether maintenance of those structures conforms to any patterns is also largely un-explored. In this paper, we explore three releases of the Eclipse system to establish where the refactoring activity lay vis-a-vis inheritance. We explored two research questions related to the number and type of refactorings at each level of the hierarchy. The Ref-Finder tool was used to determine all refactorings across those releases and the JHawk tool used to extract the inheritance data.

Read the paper · More papers on PaperTik