Use this URL to cite or link to this record in EThOS: http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.487752
Title: Search Based Program Transformation and Slicing
Author: Fatiregun, Ayodeji
ISNI:       0000 0001 3458 2190
Awarding Body: King's College London (University of London)
Current Institution: King's College London (University of London)
Date of Award: 2007
Availability of Full Text:
Access from EThOS:
Abstract:
This thesis addresses the automation of program transformation using search-based heuristics: a genetic algorithm, a hill climbing algorithm, a greedy search algorithm and random search. Program transformation is a useful technology that has successfully been applied to many Software Engineering sub-areas such as program comprehension, reverse engineering, re-engineering, software testing, maintenance, compiler optimisation and so on. In all these applications, transformation algorithms are constructed by hand for each different transformation goal. Loo~ely speaking a transformation algorithm defines a sequence of transformation steps to apply to a given program. It is notoriously hard to find good transformation sequences automatically, and so much (costly) human intervention is required. In this thesis, we analysed the transformation problem and reformulated it as a search problem, where search techniques systematically and intelligently traverse through a large number of potential candidate solution in a search space to find one which is the best solution,or where that is not possible, one solution which is at least good enough. We show how search-based metaheuristic algorithms can be used to automate', or partly automate the problem of finding good transformation sequences. We show that the approach is sufficiently general to find sequences of transformation rules for different transformation goals. These transformation goals represent areas within Software Engineering where program transformation has been successfully applied. We provide experimental results regarding the effectiveness of the search in the sub-areas of reengineering, program slicing and program comprehension. For all test objects considered and test goals considered, the meta-heuristic search methods were able to find good sequences and, as a basic requirement, outperformed random search.
Supervisor: Not available Sponsor: Not available
Qualification Name: University of London, 2007 Qualification Level: Doctoral
EThOS ID: uk.bl.ethos.487752  DOI: Not available
Share: