Queen's University - Utility Bar

QSpace at Queen's University >
Graduate Theses, Dissertations and Projects >
Queen's Graduate Theses and Dissertations >

Please use this identifier to cite or link to this item: http://hdl.handle.net/1974/958

Title: Functionality based refactoring : improving source code comprehension
Authors: Beiko, Jeffrey Lee

Files in This Item:

File Description SizeFormat
Beiko_Jeffrey_L_200709_MSc.pdf578.3 kBAdobe PDFView/Open
Keywords: Automated refactoring
Bottom-up source code comprehension
Program comprehension
Issue Date: 2008
Series/Report no.: Canadian theses
Abstract: Software maintenance is the lifecycle activity that consumes the greatest amount of resources. Maintenance is a difficult task because of the size of software systems. Much of the time spent on maintenance is spent trying to understand source code. Refactoring offers a way to improve source code design and quality. We present an approach to refactoring that is based on the functionality of source code. Sets of heuristics are captured as patterns of source code. Refactoring opportunities are located using these patterns, and dependencies are verified to check if the located refactorings preserve the dependencies in the source code. Our automated tool performs the functional-based refactoring opportunities detection process, verifies dependencies, and performs the refactorings that preserve dependencies. These refactorings transform the source code into a series of functional regions of code, which makes it easier for developers to locate code they are searching for. This also creates a chunked structure in the source code, which helps with bottom-up program comprehension. Thus, this process reduces the amount of time required for maintenance by reducing the amount of time spent on program comprehension. We perform case studies to demonstrate the effectiveness of our automated approach on two open source applications.
Description: Thesis (Master, Computing) -- Queen's University, 2007-10-05 12:48:56.977
URI: http://hdl.handle.net/1974/958
Appears in Collections:School of Computing Graduate Theses
Queen's Graduate Theses and Dissertations

Items in QSpace are protected by copyright, with all rights reserved, unless otherwise indicated.


  DSpace Software Copyright © 2002-2008  The DSpace Foundation - TOP