Extract Class Refactoring by analyzing class variables

dc.contributor.advisor Simanta Mitra
dc.contributor.advisor Carl K. Chang
dc.contributor.author Singh, Jasmeet
dc.contributor.department Computer Science
dc.date 2018-08-11T08:05:26.000
dc.date.accessioned 2020-06-30T02:49:29Z
dc.date.available 2020-06-30T02:49:29Z
dc.date.copyright Tue Jan 01 00:00:00 UTC 2013
dc.date.embargo 2015-07-30
dc.date.issued 2013-01-01
dc.description.abstract <p>Software maintenance activities often cause design erosion and lead to increased software complexity and maintenance costs. Extract Class Refactoring attempts to address design erosion by identifying and pulling out extraneous functionalities from a class and distributing them to new classes. This thesis extends previous research in this area by improving a metric known as Structural Similarity between Methods (SSM) used during Extract Class Refactoring. The improved metric, called Variable based Similarity between methods (VSM), establishes similarities between methods based on the variables they share, and on how they use these variables. Strongly connected methods are then allocated into new classes. The thesis also introduces another metric, Cognate Members Metric (CMM), which identifies those members of a class that are only used in combination with each other, and hence, probably belong together in a separate class. Additionally, this work extends and modifies existing refactoring processes for extracting classes. A software prototype that performs Extract Class Refactoring has been developed to substantiate the research. A few Case studies are discussed and comparison and analysis of results of refactoring using the new and older approaches of the Extract Class Refactoring process are presented.</p>
dc.format.mimetype application/pdf
dc.identifier archive/lib.dr.iastate.edu/etd/13406/
dc.identifier.articleid 4413
dc.identifier.contextkey 4615910
dc.identifier.doi https://doi.org/10.31274/etd-180810-3352
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath etd/13406
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/27593
dc.language.iso en
dc.source.bitstream archive/lib.dr.iastate.edu/etd/13406/Singh_iastate_0097M_13760.pdf|||Fri Jan 14 19:52:07 UTC 2022
dc.subject.disciplines Computer Sciences
dc.subject.keywords Automated
dc.subject.keywords Extract Class Refactoring
dc.subject.keywords Jasmeet
dc.subject.keywords Refactor
dc.subject.keywords Refactoring
dc.subject.keywords Software
dc.title Extract Class Refactoring by analyzing class variables
dc.type article
dc.type.genre thesis
dspace.entity.type Publication
relation.isOrgUnitOfPublication f7be4eb9-d1d0-4081-859b-b15cee251456
thesis.degree.level thesis
thesis.degree.name Master of Science
File
Original bundle
Now showing 1 - 1 of 1
Name:
Singh_iastate_0097M_13760.pdf
Size:
2.89 MB
Format:
Adobe Portable Document Format
Description: