# Towards an effective refactoring taxonomy for sustainable software systems

**Authors:** Abdullah Almogahed, Hairulnizam Mahdin, Said Badreddine, Mazni Omar, Abdulwadood Alawadhi, Samera Obaid Barraood, Manal Othman, Shazlyn Milleana Shaharudin, And Siti Salwani Yaacob

PMC · DOI: 10.1371/journal.pone.0336296 · PLOS One · 2026-01-13

## TL;DR

This paper introduces a new refactoring taxonomy to help developers improve software quality and sustainability by focusing on key external quality attributes.

## Contribution

A novel refactoring taxonomy is proposed, based on external quality attributes to guide sustainable software evolution.

## Key findings

- The taxonomy categorizes refactoring approaches into positive, negative, and ineffective groups based on their impact on external quality attributes.
- 41 experiments across five case studies were conducted to assess refactoring effects on attributes like effectiveness and reusability.
- The taxonomy supports developers in making informed decisions to enhance software sustainability and maintainability.

## Abstract

Software refactoring is pivotal in improving software quality and ensuring complex software systems’ long-term viability and sustainability. However, developers still face challenges in understanding how refactoring approaches influence software quality, as existing classifications largely overlook sustainability aspects and provide limited guidance for long-term software evolution. This gap creates difficulties for developers in selecting appropriate refactoring approaches supporting quality improvement and sustainable maintenance. Therefore, this study addresses these challenges by proposing a novel refactoring taxonomy based on estimated external quality attributes (EEQAs). The proposed taxonomy was developed through three key phases: exploratory study, experimental study, and multi-case analysis. The exploratory study identified the most used refactoring approaches in practice, the EEQAs (effectiveness, extendibility, flexibility, functionality, reusability, and understandability), and five case studies. In the experimental study, 41 experiments across the case studies were conducted to assess the influence of refactoring approaches on EEQAs. Then, a multi-case analysis was performed to examine these effects across all case studies. The proposed refactoring taxonomy categorized the refactoring approaches into positive, negative, and ineffective groups by using their aggregate impact on the EEQAs. The proposed taxonomy puts software sustainability practices at the forefront, prioritizing EEQAs: effectiveness, extendibility, flexibility, functionality, reusability, and understandability. It offers developers a systematic approach to improving software quality, aligning with user expectations, supporting future enhancements, and facilitating system maintenance. By prioritizing these attributes in refactoring practices, developers can build sustainable, robust, and maintainable software systems that deliver long-term value to stakeholders, effectively manage the complexity of software systems, and maintain high code quality standards over time.

## Full-text entities

- **Genes:** CMPK1 (cytidine/uridine monophosphate kinase 1) [NCBI Gene 51727] {aka CK, CMK, CMPK, UMK, UMP-CMPK, UMPK}
- **Chemicals:** EEQAs (-)
- **Species:** Homo sapiens (human, species) [taxon 9606]

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/PMC12799004/full.md

## Figures

14 figures with captions in the complete paper: https://tomesphere.com/paper/PMC12799004/full.md

## References

94 references — full list in the complete paper: https://tomesphere.com/paper/PMC12799004/full.md

---
Source: https://tomesphere.com/paper/PMC12799004