On the Assessment of Interactive Detection of Code Smells in Practice: A Controlled Experiment

被引:0
|
作者
Albuquerque, Danyllo [1 ,3 ]
Guimaraes, Everton [2 ]
Perkusich, Mirko [3 ]
Rique, Thiago [3 ]
Cunha, Felipe [3 ]
Almeida, Hyggo [3 ]
Perkusich, Angelo [3 ]
机构
[1] Fed Inst Paraiba, BR-58432300 Campina Grande, Paraiba, Brazil
[2] Penn State Univ, Engn Div, Malvern, PA 19355 USA
[3] Fed Univ Campina Grande UFCG, Res Dev & Innovat Ctr VIRTUS, BR-58429900 Campina Grande, Paraiba, Brazil
关键词
Code smell; interactive detection; refactoring; controlled experiment; empirical evaluation; SOFTWARE; CONTEXT; IMPACT; TOOLS;
D O I
10.1109/ACCESS.2023.3302260
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Code smells are structures in a program that often indicate the presence of deeper maintainability problems. Code smells should be detected as soon as they are introduced, enabling refactoring actions with less effort and time. Non-Interactive Detection (NID) techniques traditionally support code smells detection, enabling developers to reveal smells in later software program versions. NID techniques do not support developers' progressive interaction with smelly code, revealing smells in the entire source code upon an explicit developer request, which might lead to the accumulation of code smells and, consequently, the degradation of software quality. Interactive Detection (ID) has emerged as a solution to overcome NID's limitations. By revealing code smell as soon as they are introduced, developers can detect smell instances earlier, resulting in more effective refactoring actions and improved code quality. However, despite its promising potential, there is a lack of evidence regarding the ID impact on code smell detection and refactoring actions during coding analysis. Our research focused on evaluating the effectiveness of an ID technique in code smell detection. Besides, we analyzed the aid of an ID technique in performing effective refactoring actions during coding analysis. To this end, we conducted a controlled experiment with 16 subjects that underwent tasks related to detecting code smells and judging refactoring actions. The experimental tasks revealed that using the ID technique led to an increase of 60% in recall and up to 13% in precision when detecting code smells. Additionally, developers have effectively identified about 55% more code smells instances using the ID technique. Our study results revealed that using ID can improve the effectiveness of code smells detection, as developers can identify opportunities for refactoring actions earlier when compared to NID.
引用
收藏
页码:84589 / 84606
页数:18
相关论文
共 49 条
  • [1] Visualizing Code Smells: Tables or Code Cities? A Controlled Experiment
    Galperin, Falko
    Koschke, Rainer
    Steinbeck, Marcel
    2022 WORKING CONFERENCE ON SOFTWARE VISUALIZATION (IEEE VISSOFT), 2022, : 51 - 62
  • [2] Identifying Code Smells with Collaborative Practices: A Controlled Experiment
    Oliveira, Roberto
    Estacio, Bernardo
    Garcia, Alessandro
    Marczak, Sabrina
    Prikladnicki, Rafael
    Kalinowski, Marcos
    Lucena, Carlos
    PROCEEDINGS OF 2016 X BRAZILIAN SYMPOSIUM ON SOFTWARE COMPONENTS, ARCHITECTURES AND REUSE (SBCARS), 2016, : 61 - 70
  • [3] Automatic detection of bad smells in code: An experimental assessment
    Fontana, Francesca Arcelli
    Braione, Pietro
    Zanoni, Marco
    JOURNAL OF OBJECT TECHNOLOGY, 2012, 11 (02):
  • [4] Integrating Interactive Detection of Code Smells into Scrum: Feasibility, Benefits, and Challenges
    Albuquerque, Danyllo
    Guimaraes, Everton
    Perkusich, Mirko
    Almeida, Hyggo
    Perkusich, Angelo
    APPLIED SCIENCES-BASEL, 2023, 13 (15):
  • [5] An Interactive Ambient Visualization for Code Smells
    Murphy-Hill, Emerson
    Black, Andrew P.
    SOFTVIS 2010: PROCEEDINGS OF THE 2010 INTERNATIONAL SYMPOSIUM ON SOFTWARE VISUALIZATION, 2010, : 5 - 14
  • [6] Code Smells Detection 2.0: Crowdsmelling and Visualization
    dos Reis, Jose Pereira
    Brito e Abreu, Fernando
    Carneiro, Glauco de F.
    2017 12TH IBERIAN CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGIES (CISTI), 2017,
  • [7] A Lightweight Approach for Detection of Code Smells
    Ghulam Rasool
    Zeeshan Arshad
    Arabian Journal for Science and Engineering, 2017, 42 : 483 - 506
  • [8] A Lightweight Approach for Detection of Code Smells
    Rasool, Ghulam
    Arshad, Zeeshan
    ARABIAN JOURNAL FOR SCIENCE AND ENGINEERING, 2017, 42 (02) : 483 - 506
  • [9] Detecting and Managing Code Smells: Research and Practice
    Sharma, Tushar
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION, 2018, : 546 - 547
  • [10] Are Relevant the Code Smells on Maintainability Effort? A Laboratory Experiment
    Ancan, Oscar
    Cares, Carlos
    2018 IEEE INTERNATIONAL CONFERENCE ON AUTOMATION/XXIII CONGRESS OF THE CHILEAN ASSOCIATION OF AUTOMATIC CONTROL (ICA-ACCA), 2018,