🤖 AI Summary
Prior work categorizes code smell interactions into co-location, coupling, and relational types, yet fails to leverage this knowledge for smell detection—causing models to overlook critical contextual dependencies. Addressing the intrinsic non-isolation and frequent co-occurrence of smells, this paper introduces the first fine-grained classification framework for bad smell interactions in Java and proposes a novel “cross-smell collaborative detection” paradigm, which formalizes inter-smell relationships as a learnable joint prediction task. Methodologically, we integrate domain-aware feature engineering with explicit interaction relation encoding, and empirically evaluate the approach using Random Forest, SVM, and XGBoost. Results demonstrate statistically significant improvements in accuracy over conventional single-smell baselines, marking the first successful translation of smell relationship knowledge into enhanced detection capability. This work establishes a new foundation for relation-aware, intelligent code quality analysis.
📝 Abstract
Code smells are indicators of potential design flaws in source code and do not appear alone but in combination with other smells, creating complex interactions. While existing literature classifies these smell interactions into collocated, coupled, and inter-smell relations, however, to the best of our knowledge, no research has used the existing knowledge of code smells and (or) their relationships with other code smells in the detection of code smells. This gap highlights the need for deeper investigation into how code smells interact with each other and assist in their detection. This would improve the overall comprehension of code smells and how they interact more effectively. This study presents a novel taxonomy and a proposed classification scheme for the possible code smell interactions considering a specific programming language as a domain. This paper has dealt with one scenario called Inter smell detection within the domain. The experiments have been carried out using several popular machine learning (ML) models. Results primarily show the presence of code smell interactions namely Inter-smell Detection within domain. These results are compatible with the available facts in the literature suggesting a promising direction for future research in code smell detection.