Identifying the move method refactoring opportunities based on evolutionary algorithm
by Wei-Feng Pan; Jing Wang; Mu-Chou Wang
International Journal of Modelling, Identification and Control (IJMIC), Vol. 18, No. 2, 2013

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.

Online publication date: Thu, 31-Jul-2014

The full text of this article is only available to individual subscribers or to users at subscribing institutions.

 
Existing subscribers:
Go to Inderscience Online Journals to access the Full Text of this article.

Pay per view:
If you are not a subscriber and you just want to read the full contents of this article, buy online access here.

Complimentary Subscribers, Editors or Members of the Editorial Board of the International Journal of Modelling, Identification and Control (IJMIC):
Login with your Inderscience username and password:

    Username:        Password:         

Forgotten your password?


Want to subscribe?
A subscription gives you complete access to all articles in the current issue, as well as to all articles in the previous three years (where applicable). See our Orders page to subscribe.

If you still need assistance, please email subs@inderscience.com