Multi-Classification Refactoring Framework Using Hopfield Neural Network for Sustainable Software Development

Adopting high-quality source code is the ultimate way through which software evolution can be ensured as sustainable. Continuous refactoring in complex software systems ensures longevity and increases architecture knowledge sustainability. However, decision-making about refactoring is a challenge be...

Full description

Saved in:
Bibliographic Details
Main Authors: Abdullah Almogahed, Hairulnizam Mahdin, Yeong Hyeon Gu, Mohammed A. Al-Masni, Shehab Abdulhabib Alzaeemi, Mazni Omar, Abdulwadood Alawadhi, Samera Obaid Barraood, Abdul Rehman Gilal, Adnan Ameen Bakather
Format: Article
Language:English
Published: IEEE 2025-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/10887181/
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Adopting high-quality source code is the ultimate way through which software evolution can be ensured as sustainable. Continuous refactoring in complex software systems ensures longevity and increases architecture knowledge sustainability. However, decision-making about refactoring is a challenge because the benefits of refactoring are vague and very difficult for the developers to quantify, as different refactoring strategies have different effects on quality attributes. No research has developed a multi-classification refactoring framework using artificial neural networks (ANN), specifically hopfield neural networks (HNN), to classify refactoring strategies and improve external software quality and sustainability. Therefore, this study proposes a multi-classification refactoring framework using HNN that classifies refactoring strategies by their impact on external quality attributes. Five stages have been conducted to perform this study, including selecting case studies, identifying the external quality attributes, identifying the most commonly used refactoring strategies in practice, conducting the experiments, and conducting the classification process using HNN. The proposed framework categorizes the refactoring strategies into three categories (positive, negative, and ineffective). By providing clear classifications and descriptions of each strategy, the proposed framework helps developers make informed decisions about how to improve the design and structure of their code. It helps developers mitigate risks associated with code changes by providing guidance on which strategies are likely to yield positive results for specific quality attributes. The proposed multi-classification refactoring framework enhances software sustainability by enhancing critical quality attributes. It supports maintainability, adaptability, and long-term viability, helping to ensure that the software systems remain relevant, efficient, and valuable over time.
ISSN:2169-3536