Search-based refactoring: an empirical study

  • Authors:
  • Mark O'Keeffe;Mel Ó Cinnéide

  • Affiliations:
  • School of Computer Science and Informatics, University College Dublin, Belfield, Dublin 4, Ireland;School of Computer Science and Informatics, University College Dublin, Belfield, Dublin 4, Ireland

  • Venue:
  • Journal of Software Maintenance and Evolution: Research and Practice - Search Based Software Engineering [SBSE]
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Object-oriented systems that undergo repeated addition of functionality commonly suffer a loss of quality in their underlying design. This problem must often be remedied in a costly refactoring phase before further maintenance programming can take place. Recently search-based approaches to automating the task of software refactoring, based on the concept of treating object-oriented design as a combinatorial optimization problem, have been proposed. However, because search-based refactoring is a novel approach it is yet to be established as to which search techniques are most suitable for the task. In this paper we report the results of an empirical comparison of simulated annealing (SA), genetic algorithms (GAs) and multiple ascent hill-climbing (HCM) in search-based refactoring. A prototype automated refactoring tool is employed, capable of making radical changes to the design of an existing program in order that it conforms more closely to a contemporary quality model. Results show HCM to outperform both SA and GA over a set of five input programs. Copyright © 2008 John Wiley & Sons, Ltd.