Identifying The Move Method Refactoring Opportunities Based On Evolutionary Algorithm

INTERNATIONAL JOURNAL OF MODELLING IDENTIFICATION AND CONTROL(2013)

Cited 6|Views16
No score
Abstract
Evolution is an intrinsic property of real-world software, which is usually accompanied by the degrading in software quality. Software refactoring is regarded as an effective way to improve the design of the code, and many refactoring approaches have been proposed. In this paper, we transform the software refactoring problem as an optimisation problem, and present a simple evolutionary algorithm (EA) to identify the move method refactorings. It uses software networks at the feature (i.e., method and attribute) level, namely SFN, to represent features and their dependencies; it uses an EA to obtain the optimised class structures in SFN. It finally provides a list of methods that should be moved by comparing the optimised class structures with the real class structures. The empirical evaluation of the proposed approach has been performed on one widely known refactoring example, and the feasibility of our approach is illustrated.
More
Translated text
Key words
refactoring, evolutionary algorithm, EA, software networks, community detection
AI Read Science
Must-Reading Tree
Example
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined