A reference model for refactoring techniques categorization based on software quality attributes

The cost of software maintenance and evolution activities represents more than 80% of total software development costs. Refactoring is one of the trusted techniques widely used to facilitate and reduce maintenance activities and costs. However, the effects of the refactoring techniques on quality a...

Full description

Saved in:
Bibliographic Details
Main Author: Ahmed, Abdullah Abdurahman Mohamed
Format: Thesis
Language:English
English
Published: 2021
Subjects:
Online Access:https://etd.uum.edu.my/9542/1/depositpermission_s902941.pdf
https://etd.uum.edu.my/9542/2/s902941_01.pdf
https://etd.uum.edu.my/9542/
Tags: Add Tag
No Tags, Be the first to tag this record!
id my.uum.etd.9542
record_format eprints
spelling my.uum.etd.95422022-06-26T01:47:29Z https://etd.uum.edu.my/9542/ A reference model for refactoring techniques categorization based on software quality attributes Ahmed, Abdullah Abdurahman Mohamed T Technology (General) The cost of software maintenance and evolution activities represents more than 80% of total software development costs. Refactoring is one of the trusted techniques widely used to facilitate and reduce maintenance activities and costs. However, the effects of the refactoring techniques on quality attributes are inconsistent and contradictory because different techniques affect different quality attributes in various ways. It is, therefore, a challenge for software developers to use these techniques to improve the software quality. Moreover, there is a lack of guidelines to enable software developers to decide which refactoring techniques to use to improve software quality regarding specific design goals. Therefore, the main objective of this study is to propose a reference model for categorizing the refactoring techniques based on their measurable effect on quality attributes. Initially, a problem definition and exploratory study were carried out to determine the common refactoring techniques used. Then, an experimental study was carried out with five case studies to measure the effect of refactoring techniques on quality attributes. The model was constructed based on the results of exploratory and experimental studies, followed by multi-case analysis, and setting up conventions. It was verified through a focus group discussion and expert reviews. Additionally, three case studies were empirically performed to validate the model. The model consists of five main components: methodology of applying refactoring techniques, Quality Model for Object-Oriented Design (QMOOD), factors causing different effects of refactoring techniques, categorization of refactoring techniques, and guidelines for software developers. The findings revealed that the model gained experts’ satisfaction and practical to be executed in the real environment. Theoretically, this study contributes a reference model that categorizes refactoring techniques based on their effect on quality attributes. Besides, the model provides refactoring process guidelines for software developers to choose suitable refactoring techniques to improve the software quality. 2021 Thesis NonPeerReviewed text en https://etd.uum.edu.my/9542/1/depositpermission_s902941.pdf text en https://etd.uum.edu.my/9542/2/s902941_01.pdf Ahmed, Abdullah Abdurahman Mohamed (2021) A reference model for refactoring techniques categorization based on software quality attributes. Doctoral thesis, Universiti Utara Malaysia.
institution Universiti Utara Malaysia
building UUM Library
collection Institutional Repository
continent Asia
country Malaysia
content_provider Universiti Utara Malaysia
content_source UUM Electronic Theses
url_provider http://etd.uum.edu.my/
language English
English
topic T Technology (General)
spellingShingle T Technology (General)
Ahmed, Abdullah Abdurahman Mohamed
A reference model for refactoring techniques categorization based on software quality attributes
description The cost of software maintenance and evolution activities represents more than 80% of total software development costs. Refactoring is one of the trusted techniques widely used to facilitate and reduce maintenance activities and costs. However, the effects of the refactoring techniques on quality attributes are inconsistent and contradictory because different techniques affect different quality attributes in various ways. It is, therefore, a challenge for software developers to use these techniques to improve the software quality. Moreover, there is a lack of guidelines to enable software developers to decide which refactoring techniques to use to improve software quality regarding specific design goals. Therefore, the main objective of this study is to propose a reference model for categorizing the refactoring techniques based on their measurable effect on quality attributes. Initially, a problem definition and exploratory study were carried out to determine the common refactoring techniques used. Then, an experimental study was carried out with five case studies to measure the effect of refactoring techniques on quality attributes. The model was constructed based on the results of exploratory and experimental studies, followed by multi-case analysis, and setting up conventions. It was verified through a focus group discussion and expert reviews. Additionally, three case studies were empirically performed to validate the model. The model consists of five main components: methodology of applying refactoring techniques, Quality Model for Object-Oriented Design (QMOOD), factors causing different effects of refactoring techniques, categorization of refactoring techniques, and guidelines for software developers. The findings revealed that the model gained experts’ satisfaction and practical to be executed in the real environment. Theoretically, this study contributes a reference model that categorizes refactoring techniques based on their effect on quality attributes. Besides, the model provides refactoring process guidelines for software developers to choose suitable refactoring techniques to improve the software quality.
format Thesis
author Ahmed, Abdullah Abdurahman Mohamed
author_facet Ahmed, Abdullah Abdurahman Mohamed
author_sort Ahmed, Abdullah Abdurahman Mohamed
title A reference model for refactoring techniques categorization based on software quality attributes
title_short A reference model for refactoring techniques categorization based on software quality attributes
title_full A reference model for refactoring techniques categorization based on software quality attributes
title_fullStr A reference model for refactoring techniques categorization based on software quality attributes
title_full_unstemmed A reference model for refactoring techniques categorization based on software quality attributes
title_sort reference model for refactoring techniques categorization based on software quality attributes
publishDate 2021
url https://etd.uum.edu.my/9542/1/depositpermission_s902941.pdf
https://etd.uum.edu.my/9542/2/s902941_01.pdf
https://etd.uum.edu.my/9542/
_version_ 1736836562146033664
score 13.160551