An Empirical Study on the Occurrences of Code Smells in Open Source and Industrial Projects

被引:2
|
作者
Rahman, Md. Masudur [1 ]
Satter, Abdus [1 ]
Joarder, Md. Mahbubul Alam [1 ]
Sakib, Kazi [1 ]
机构
[1] Univ Dhaka, Inst Informat Technol, Dhaka, Bangladesh
关键词
code smell; open source system; industrial system; empirical study;
D O I
10.1145/3544902.3546634
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Background: Reusing source code containing code smells can induce significant amount of maintenance time and cost. A list of code smells has been identified in the literature and developers are encouraged to avoid the smells from the very beginning while writing new code or reusing existing code, and it increases time and cost to identify and refactor the code after the development of a system. Again, remembering a long list of smells is difficult specially for the new developers. Besides, two different types of software development environment - open source and industry, might have an effect on the occurrences of code smells. Aims: A study on the occurrences of code smells in open source and industrial systems can provide insights about the most frequently occurring smells in each type of software system. The insights can make developers aware of the most frequent occurring smells, and researchers to focus on the improvement and innovation of automatic refactoring tools or techniques for the smells on priority basis. Method: We have conducted a study on 40 large scale Java systems, where 25 are open source and 15 are industrial systems, for 18 code smells. Results: The results show that 6 smells have not occurred in any system, and 12 smells have occurred 21,182 times in total where 60.66% in the open source systems and 39.34% in the industrial systems. Long Method, Complex Class and Long Parameter List have been seen as frequently occurring code smells. The one tailed t-test with 5% level of significant analysis has shown that there is no difference between the occurrences of 10 code smells in industrial and open source systems, and 2 smells are occurred more frequently in open source systems than industrial systems. Conclusions: Our findings conclude that all smells do not occur at the same frequency and some smells are very frequent. The short list of most frequently occurred smells can help developers to write or reuse source code carefully without inducing the smells from the beginning during software development. Our study also concludes that industry and open source environments do not have significant impact on the occurrences of code smells.
引用
收藏
页码:289 / 294
页数:6
相关论文
共 50 条
  • [31] What Do The Asserts in a Unit Test Tell Us About Code Quality? A Study on Open Source and Industrial Projects
    Aniche, Mauricio Finavaro
    Oliva, Gustavo Ansaldi
    Gerosa, Marco Aurelio
    PROCEEDINGS OF THE 17TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR 2013), 2013, : 111 - 120
  • [32] Prevalence of Code Smells in Reinforcement Learning Projects
    Cardozo, Nicolas
    Dusparic, Ivana
    Cabrera, Christian
    2023 IEEE/ACM 2ND INTERNATIONAL CONFERENCE ON AI ENGINEERING - SOFTWARE ENGINEERING FOR AI, CAIN, 2023, : 37 - 42
  • [33] House of Cards: Code Smells in Open-source C# Repositories
    Sharma, Tushar
    Fragkoulis, Marios
    Spinellis, Diomidis
    11TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2017), 2017, : 424 - 429
  • [34] On the diffuseness of code technical debt in open source projects
    Lenarduzzi, Valentina
    Saarimaki, Nyyti
    Taibi, Davide
    Proceedings - 2019 IEEE/ACM International Conference on Technical Debt, TechDebt 2019, 2019, : 98 - 107
  • [35] An Exploratory Study on Code Smells during Code Review in OSS Projects: A Case Study on OpenStack and WikiMedia
    Nanthaamornphong A.
    Boonchieng E.
    Recent Advances in Computer Science and Communications, 2023, 16 (07) : 20 - 33
  • [36] How developers perceive smells in source code: A replicated study
    Taibi, Davide
    Janes, Andrea
    Lenarduzzi, Valentina
    INFORMATION AND SOFTWARE TECHNOLOGY, 2017, 92 : 223 - 235
  • [37] Empirical evaluation of code smells in open-source software (OSS) using Best Worst Method (BWM) and TOPSIS approach
    Tandon, Stuti
    Kumar, Vijay
    Singh, V. B.
    INTERNATIONAL JOURNAL OF QUALITY & RELIABILITY MANAGEMENT, 2022, 39 (03) : 815 - 835
  • [38] Code smells as system-level indicators of maintainability: An empirical study
    Yamashita, Aiko
    Counsell, Steve
    JOURNAL OF SYSTEMS AND SOFTWARE, 2013, 86 (10) : 2639 - 2653
  • [39] How Are Discussions Associated with Bug Reworking? An Empirical Study on Open Source Projects
    Zhao, Yu
    Zhang, Feng
    Shihab, Emad
    Zou, Ying
    Hassan, Ahmed E.
    ESEM'16: PROCEEDINGS OF THE 10TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT, 2016,
  • [40] An Empirical Study of (Multi-) Database Models in Open-Source Projects
    Benats, Pol
    Gobert, Maxime
    Meurice, Loup
    Nagy, Csaba
    Cleve, Anthony
    CONCEPTUAL MODELING, ER 2021, 2021, 13011 : 87 - 101