Do they Really Smell Bad? A Study on Developers' Perception of Bad Code Smells

被引:165
|
作者
Palomba, Fabio [1 ]
Bavota, Gabriele [2 ]
Di Penta, Massimiliano [2 ]
Oliveto, Rocco [3 ]
De Lucia, Andrea [1 ]
机构
[1] Univ Salerno, Salerno, Italy
[2] Univ Sannio, Benevento, Italy
[3] Univ Molise, Campobasso, Italy
关键词
Code Smells; Empirical Study;
D O I
10.1109/ICSME.2014.32
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In the last decade several catalogues have been defined to characterize bad code smells, i.e., symptoms of poor design and implementation choices. On top of such catalogues, researchers have defined methods and tools to automatically detect and/or remove bad smells. Nevertheless, there is an ongoing debate regarding the extent to which developers perceive bad smells as serious design problems. Indeed, there seems to be a gap between theory and practice, i.e., what is believed to be a problem (theory) and what is actually a problem (practice). This paper presents a study aimed at providing empirical evidence on how developers perceive bad smells. In this study, we showed to developers code entities-belonging to three systems-affected and not by bad smells, and we asked them to indicate whether the code contains a potential design problem, and if any, the nature and severity of the problem. The study involved both original developers from the three projects and outsiders, namely industrial developers and Master's students. The results provide insights on characteristics of bad smells not yet explored sufficiently. Also, our findings could guide future research on approaches for the detection and removal of bad smells.
引用
收藏
页码:101 / 110
页数:10
相关论文
共 50 条
  • [1] Visualizing Code Bad Smells
    Hammad, Maen
    Alsofriya, Sabah
    [J]. INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2019, 10 (05) : 281 - 286
  • [2] Do you smell it too? Towards Bad Smells in IEC 61499 Applications
    Sonnleithner, Lisa
    Oberlehner, Michael
    Kutsia, Elene
    Zoitl, Alois
    Bacsi, Sandor
    [J]. 2021 26TH IEEE INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2021,
  • [3] A taxonomy and an initial empirical study of bad smells in code
    Mäntylä, M
    Vanhanen, J
    Lassenius, C
    [J]. INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2003, : 381 - 384
  • [4] Bad smells -: Humans as code critics
    Mäntylä, MV
    Vanhanen, J
    Lassenius, C
    [J]. 20TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, PROCEEDINGS, 2004, : 399 - 408
  • [5] When and Why Your Code Starts to Smell Bad (and Whether the Smells Go Away)
    Tufano, Michele
    Palomba, Fabio
    Bavota, Gabriele
    Oliveto, Rocco
    Di Penta, Massimiliano
    De Lucia, Andrea
    Poshyvanyk, Denys
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2017, 43 (11) : 1063 - 1088
  • [6] Code Bad Smells: a review of current knowledge
    Zhang, Min
    Hall, Tracy
    Baddoo, Nathan
    [J]. JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION-RESEARCH AND PRACTICE, 2011, 23 (03): : 179 - 202
  • [7] Do Developers Focus on Severe Code Smells?
    Saika, Tsubasa
    Choi, Eunjong
    Yoshida, Norihiro
    Haruna, Shusuke
    Inoue, Katsuro
    [J]. 2016 IEEE 23RD INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION, AND REENGINEERING (SANER), VOL 4, 2016, : 1 - 3
  • [8] A detection tool for code bad smells in java source code
    Gupta, Aakanshi
    Suri, Bharti
    Wadhwa, Bimlesh
    [J]. Advances in Intelligent Systems and Computing, 2021, 1086 : 479 - 488
  • [9] How Do Developers Select and Prioritize Code Smells? A Preliminary Study
    Sae-Lim, Natthawute
    Hayashi, Shinpei
    Saeki, Motoshi
    [J]. 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2017, : 484 - 488
  • [10] Automatic detection of bad smells in code: An experimental assessment
    Fontana, Francesca Arcelli
    Braione, Pietro
    Zanoni, Marco
    [J]. JOURNAL OF OBJECT TECHNOLOGY, 2012, 11 (02):