International Journal

Context-Based Approach to Prioritize Code Smells for Prefactoring

Natthawute Sae-Lim, Shinpei Hayashi, Motoshi Saeki

Journal of Software: Evolution and Process, vol. 30, no. 6, pp. e1886:1–24, June 2018.

東京工業大学手島精一記念研究賞(留学生研究賞)

Abstract

Existing techniques for detecting code smells (indicators of source code problems) do not consider the current context, which renders them unsuitable for developers who have a specific context, such as modules within their focus. Consequently, the developers must spend time identifying relevant smells. We propose a technique to prioritize code smells using the developers' context. Explicit data of the context are obtained using a list of issues extracted from an issue tracking system. We applied impact analysis to the list of issues and used the results to specify the context-relevant smells. Results show that our approach can provide developers with a list of prioritized code smells related to their current context. We conducted several empirical studies to investigate the characteristics of our technique and factors that might affect the ranking quality. Additionally, we conducted a controlled experiment with professional developers to evaluate our technique. The results demonstrate the effectiveness of our technique.

Related papers

This work builds on

BibTeX

@article{natthawute-jsep201806,
    author = {Natthawute Sae-Lim and Shinpei Hayashi and Motoshi Saeki},
    title = {Context-Based Approach to Prioritize Code Smells for Prefactoring},
    journal = {Journal of Software: Evolution and Process},
    volume = 30,
    number = 6,
    pages = {e1886:1--24},
    doi = {10.1002/smr.1886},
    year = 2018,
}
Type
International Journal
Published
June 2018
Volume / Pages
vol. 30, no. 6, pp. e1886:1–24
DOI
10.1002/smr.1886