What Kinds of Refactorings are Co-Occurred? An Analysis of Eclipse Usage Datasets

2014 
Refactoring is the process of changing the internal structure of software without changing its external behavior. So far, numerous tools have been proposed on that refactoring support. However, it is difficult for existing refactoring support tools to support consecutively co-occurred refactorings. To alleviate this problem, a tool which supports consecutively co-occurred refactorings is required. In order to develop a tool support of frequently co-occurred refactorings, this study investigated the frequency of co-occurred refactorings by analyzing usage data of Eclipse. As a result of investigation, it turns out that refactoring pairs (Move, Rename), (Rename, Rename) and (Extract, Move) were more frequently occurred than other pairs. Furthermore, in order to support co-occurred refactorings based on the results of the investigation, this study investigated the detail of co-occurred refactorings and devised suggestions for improving the automated refactoring features in Eclipse. In the investigation of refactoring pair (Move, Rename), we found that program elements were moved and subsequently the names of those elements were renamed. According to this finding, we suggest the need of a tool for supporting this refactoring by recommending appropriate rename for moved elements.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    22
    References
    0
    Citations
    NaN
    KQI
    []