An exploratory study on the identification and evaluation of bad smell agglomerations
Symposium on Applied Computing(2021)
Abstract
ABSTRACTSystems must evolve to cope with new stakeholders requirements, or to fix existing problems. These changes are complex due to several factors, including the need of understanding the source code, activity that is impaired by the presence of bad smells. Bad smell is a symptom of bad decisions about the system design or code. When two or more bad smells occur in the same snippet of code, they form an agglomeration. Hence, developers need to put more effort to perform their development and maintenance tasks. However, few studies in the literature evaluate how such agglomerations may impact development activities. We aim at exploring agglomerations focusing on evaluating how they are spread in the code, and how they impact on the metrics of software modularity. In this work, we evaluate agglomerations composed of four kinds of bad smells: Large Class, Long Method, Feature Envy and Refused Bequest. Our results are achieved through the use of association rules and effect size measurements. We have found that classes with two or more smells are frequent in the source code, even when the smells present in the class are of the same type. We also found that agglomerations are highly spread in the source code, even when the size of the systems are taken into account, and they have a significant effect on most modularity metrics.
MoreTranslated text
AI Read Science
Must-Reading Tree
Example
![](https://originalfileserver.aminer.cn/sys/aminer/pubs/mrt_preview.jpeg)
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined