Observational analysis reveals a moderate association between architecture and design smells, suggesting key metrics for developers.
Code smells are traits of software that may specify a design or code problem, making the software difficult to evolve and maintain. Detecting and removing them improves the quality and viability of a system. The smells can be classified as architecture smells, design smells, and implementation smells. Studying different types of smells and the relationship with each other, shows the dependencies, and the detailed study of architecture smells relationship with design smells in other granularities gives more ideas to the developers so that developers can take early steps to minimize the risk of smells in the code. In this paper, Association rules have been used to find the co-occurrence between architecture smells and design smells. Correlation coefficients have been implemented to find the correlation between architecture smells and design smells. Lasso helped to select the significant metrics and take them as independent variables. In this study, the prediction models have been developed for architecture smells and design smells based on significant metrics. The results show that the architecture smells and design smells have a weak positive correlation, with the Correlation coefficients = 0.217, 0.231, 0.245, and 0.245 for "Eclipse 3.2, Eclipse 3.3, Eclipse 3.6, and Eclipse 3.7" respectively, and the p-value is equal to less than 0.001. Association rules display that architecture smells co-occur with design smells, but it has been found that there is a moderate association between architecture smells and design smells. The metrics model predicts the architecture smells and design smells with the accuracy given in Tables 13 and 14, respectively.
No takes yet. Share an insight, caveat, or question.
Singh et al. (2025) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: