2018
DOI: 10.1587/transinf.2017kbp0006
|View full text |Cite
|
Sign up to set email alerts
|

An Investigative Study on How Developers Filter and Prioritize Code Smells

Abstract: Code smells are indicators of design flaws or problems in the source code. Various tools and techniques have been proposed for detecting code smells. These tools generally detect a large number of code smells, so approaches have also been developed for prioritizing and filtering code smells. However, lack of empirical data detailing how developers filter and prioritize code smells hinders improvements to these approaches. In this study, we investigated ten professional developers to determine the factors they … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

1
3
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
7
1

Relationship

1
7

Authors

Journals

citations
Cited by 17 publications
(4 citation statements)
references
References 31 publications
1
3
0
Order By: Relevance
“…The main reason is that although solving code smells that are irrelevant to developers' context (e.g., modules developers plan to modify) may improve the overall quality of the system, it does not support the developers' current activities. This statement is also supported by our previous study on professional developers showing that developers tend to refactor the code smells related to their context [29]. Therefore, context-irrelevant modules can be postponed until they become relevant to developers' context.…”
Section: Discussionsupporting
confidence: 69%
See 1 more Smart Citation
“…The main reason is that although solving code smells that are irrelevant to developers' context (e.g., modules developers plan to modify) may improve the overall quality of the system, it does not support the developers' current activities. This statement is also supported by our previous study on professional developers showing that developers tend to refactor the code smells related to their context [29]. Therefore, context-irrelevant modules can be postponed until they become relevant to developers' context.…”
Section: Discussionsupporting
confidence: 69%
“…This phenomenon may be comparable to the fact that static analysis tools are not used well by developers owing to a large number of detected warnings [28]. In other words, the number of code smells is too high for developers to consider refactoring, thereby resulting in several studies focusing on filtering and prioritizing code smells [29]- [31]. Here the following simple question arises: Why should developers handle non-smelly modules when they already have more than enough smelly modules to handle.…”
Section: Discussionmentioning
confidence: 99%
“…Many studies determine smell severity automatically by measuring the chosen code metrics or using other heuristics such as historical information of component modification. However, the large variety of such approaches suggests that researchers disagree on the factors that should be used to filter and prioritize code smells (Sae-Lim et al, 2018).…”
Section: Define Severity Scalementioning
confidence: 99%
“…In construction of this mapping, several sources in the literature have been used. Sae-Lim et al conducted an investigation study to find out how developers filter and prioritize code smells [79]. They found that the most important factors for filtering are 1) task relevance, 2) smell severity, and 3) task implementation cost.…”
Section: ) Code Heterogenitymentioning
confidence: 99%