Prioritizing God Class Code Smells in Object-Oriented Software Using Fuzzy Inference System

Renu Verma,Kuldeep Kumar,Harsh K. Verma
DOI: https://doi.org/10.1007/s13369-024-08826-9
IF: 2.807
2024-03-06
Arabian Journal for Science and Engineering
Abstract:Code Smell is a term that indicates flaws in design and coding practice. God Class is a type of code smell that shows an irregular distribution of functionalities in large-sized classes. God Classes are less cohesive and more coupled in nature, thereby increasing software maintenance efforts and costs. Refactoring all such classes can disturb other related classes with code smell instances, puzzle the developers, and increase the refactoring budget. This paper proposes an automated method to prioritize God Class smell-associated classes with the fuzzy inference system. The fuzzy inference system is used to fuzzy the selected criteria—number of code smell instances, type of code smells, and changes in history. For effective refactoring, first, we moderate the dataset with the CodeMR tool and then highlight that the prioritization criteria are imperative after detecting code smells. Using five metric-based heuristics, a comparative result analysis is done to determine the fore reason for correlation (40–43%) with our results and the gravity of our prioritization criteria. Finally, we provide a severity index of classes with five type classifications and evaluate runtime performance (in seconds) to improve quality.
multidisciplinary sciences
What problem does this paper attempt to address?