•  
  •  
 

Corresponding Author ORCID Identifer

Abdullah Almogahed https://orcid.org/0000-0001-5408-1529
Abdul Rehman Gilalhttps://orcid.org/0000-0002-1904-1588

Section

(Thematic) AI-Enhanced Computing and Digital Transformation

Abstract

Software refactoring is a crucial practice in modern software development methodologies, such as Agile and DevOps, as it enables teams to iteratively improve and evolve their codebases while minimizing the risk of introducing bugs or regressions. It fosters a culture of continuous improvement and code hygiene, ultimately leading to more robust, maintainable, and scalable software systems. However, research examining the impact of refactoring on code effectiveness is scarce. This study, therefore, seeks to investigate the impact of refactoring methods on the code’s effectiveness. The study was carried out in four distinct phases: refactoring methods selection, case study selection, software metric selection for evaluating the effectiveness of the code, and refactoring methods implementation. The five most prevalent refactoring methods (Extract Subclass, Extract Class, Introduce Parameter Object, Extract Method, and Move Method) were chosen and implemented in the jHotDraw case study. The refactoring methods were implemented 86 times across five experiments in the jHotDraw case study. The results indicate that Extract Subclass, Extract Class, and Introduce Parameter Object have a significant positive impact on code effectiveness, while Extract Method and Move Method do not affect code effectiveness. Practitioners and software designers can utilize this knowledge to make informed assessments regarding refactoring methods and produce software systems that are more reliable and effective.

Share

COinS