Automated Software Maintenance Using Search-Based Refactoring

  • Michael Mohan

Student thesis: Doctoral ThesisDoctor of Philosophy

Abstract

Search-based software maintenance (SBSM) is an area of research that uses refactorings, software metrics and search-based optimisation algorithms to automate aspects of the software maintenance process. Refactorings are used to improve the structure of software without affecting its functionality. Search-based optimisation algorithms can be adapted to use refactorings to modify software, relying on metrics to deduce how successful the refactorings have been along the way. The research conducted in this thesis aims to explore the research area of SBSM and experiment with methods to automate software refactoring using optimisation algorithms.
The current state of the art in the area is inspected and gaps are identified in the current literature. In particular, the need for further investigation of multi-objective and many-objective optimisation techniques, as well as experimentation with the metrics used to measure the software, is present. In order to experiment with different ways to optimise software for quality an automated refactoring tool is developed. Using this tool, novel aspects of the software are investigated and used as measures to assess and then improve the quality of the software. A multi-objective optimisation algorithm is used so that in addition to quality other, more complex properties are also improved. Using the automated maintenance tool and the underlying approaches, a methodology is presented to automate the refactoring process. Four different areas of importance are investigated as objectives for automated refactoring. The main contributions of the research work are the developed automated refactoring tool, the 4 objectives constructed to measure different aspects of the software code and the methodology developed to maintain the code using the 4 separate measures with a many-objective optimisation algorithm.
Date of AwardFeb 2018
Original languageEnglish
Awarding Institution
  • Queen's University Belfast
SponsorsEngineering & Physical Sciences Research Council
SupervisorDesmond Greer (Supervisor) & Paul McMullan (Supervisor)

Cite this

Automated Software Maintenance Using Search-Based Refactoring
Mohan, M. (Author). Feb 2018

Student thesis: Doctoral ThesisDoctor of Philosophy