AuthorsA. Yamashita, M. Zanoni, F. Arcelli and B. Walter
TitleExploratory Study on the Landscape of Inter-Smell Relations in Industrial and Open Source Systems
AfilliationSoftware Engineering
Project(s)The Certus Centre (SFI)
Publication TypeTechnical reports
Year of Publication2014
Date PublishedSeptember
PublisherSimula Research Laboratory
Place Published.

Code smells are indicators of issues with source code that can hinder software evolution. While a great number of studies have focused on the effects of individual code smells on maintainability, recent work has shown that code smells that appear together in the same file (i.e., collocated smells) can interact with each other, leading to various types of maintenance issues and/or to intensified negative effects. Moreover, it has been found that code smell interactions may occur across coupled files (i.e., coupled smells), with comparable negative effects as the interaction of same-file, collocated smells. Different inter- smell relations have been described in previous work, but few studies have validated them empirically. This study investigates further the phenomena of inter-smell relations (both collocated and coupled smell relations), by analyzing one industrial and two open-source systems. We substantiated the relevance of some inter-smells suggested previously in the literature and present a more comprehensive topography of emergent inter-smell relations. We found that tendencies on inter-smell relations become clearer when considering coupled smells in addition to collocated smells. A major finding is that contextual factors such as the domain and environment play a major role on the presence, co-presence, and coupling between smells, which suggests that such variables should be considered when conducting smell analysis.

Citation KeySimula.simula.2998