1
Contextual analysis of refactoring on software quality in code evolution | |
Author | Chaklam Silpasuwanchai |
Call Number | AIT Thesis no.CS-11-04 |
Subject(s) | Computer software---Quality control |
Note | A thesis submitted in partial fulfillment of the requirements for the degree of Master of Engineering in Computer Science,School of Engineering and Technology |
Publisher | Asian Institute of Technology |
Series Statement | Thesis ; no. CS-11-04 |
Abstract | Refactoring is a simple method to continuously maintaining a code by reorganizing the code in such a way that it becomes easier to read and understand. The underlying concept aims to make changes in the internal structure of the code such as redistributing classes and methods so to informally improve the system’s maintainability, modifiability, readability, and reusability without altering the way it behaves. Anyhow, the actual benefits of refactoring has few been measured scientifically. By understanding its actual benefits and drawbacks, software engineers could better utilize it in a more proper way. Due to the recent researches which show that refactoring has adverse effect on quality, as a result, it motivates more researches in this area into its actual effect as well as its contextual analysis. In this thesis, impact of refactoring on quality has been analyzed and contextual analysis has been performed to synthesize what is behind the refactoring effectiveness against quality. Results show that refactoring has a positive effect on reusability while having an adverse effect on maintainability, since most of the refactoring adds additional requirement to the system code. Also, observations show that refactoring slightly increase readability as well. Experiment on the context has been performed and statistics shows that metrics and refactoring behavior are the main context that affects refactoring impact on quality. Finally, this thesis had generalized an algorithm for predicting a class quality when two refactoring type, Pull up method/field and Inline subclass, has been performed on a class based on its context. |
Year | 2011 |
Corresponding Series Added Entry | Asian Institute of Technology. Thesis : no. CS-11-04 |
Type | Thesis |
School | School of Engineering and Technology (SET) |
Department | Department of Information and Communications Technologies (DICT) |
Academic Program/FoS | Computer Science (CS) |
Chairperson(s) | Janecek, Paul; |
Examination Committee(s) | Dailey, Matthew;Duboz, Raphael; |
Scholarship Donor(s) | Royal Thai Government Fellowship; |
Degree | Thesis (M. Eng.) - Asian Institute of Technology, 2011 |