Code Bad Smell Detection through Evolutionary Data Mining

被引:0
|
作者
Fu, Shizhe [1 ]
Shen, Beijun [1 ]
机构
[1] Shanghai Jiao Tong Univ, Sch Software, Shanghai 200030, Peoples R China
关键词
bad smell detection; data mining; software evolutionary history;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The existence of code bad smell has a severe impact on the software quality. Numerous researches show that ignoring code bad smells can lead to failure of a software system. Thus, the detection of bad smells has drawn the attention of many researchers and practitioners. Quite a few approaches have been proposed to detect code bad smells. Most approaches are solely based on structural information extracted from source code. However, we have observed that some code bad smells have the evolutionary property, and thus propose a novel approach to detect three code bad smells by mining software evolutionary data: duplicated code, shotgun surgery, and divergent change. It exploits association rules mined from change history of software systems, upon which we define heuristic algorithms to detect the three bad smells. The experimental results on five open source projects demonstrate that the proposed approach achieves higher precision, recall and F-measure.
引用
收藏
页码:41 / 49
页数:9
相关论文
共 50 条
  • [1] A review of code smell mining techniques
    Rasool, Ghulam
    Arshad, Zeeshan
    [J]. JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2015, 27 (11) : 867 - 895
  • [2] Code Smell detection through metrics for the protection of template methods
    Santaolaya-Salgado, Rene
    Ramirez-Garcia, Elias Alejandro
    Valenzuela-Robles, Blanca Dina
    Fragoso-Diaz, Olivia Graciela
    [J]. DYNA, 2024, 99 (04):
  • [3] Optimizing LSTM for Code Smell Detection: The Role of Data Balancing
    Khleel, Nasraldeen Alnor Adam
    Nehéz, Károly
    [J]. Infocommunications Journal, 2024, 16 (03): : 57 - 63
  • [4] When and Why Your Code Starts to Smell Bad
    Tufano, Michele
    Palomba, Fabio
    Bavota, Gabriele
    Oliveto, Rocco
    Di Penta, Massimiliano
    De Lucia, Andrea
    Poshyvanyk, Denys
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 1, 2015, : 403 - 414
  • [5] Do they Really Smell Bad? A Study on Developers' Perception of Bad Code Smells
    Palomba, Fabio
    Bavota, Gabriele
    Di Penta, Massimiliano
    Oliveto, Rocco
    De Lucia, Andrea
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2014, : 101 - 110
  • [6] Poster: Machine Learning based Code Smell Detection through WekaNose
    Azadi, Umberto
    Fontana, Francesca Arcelli
    Zanoni, Marco
    [J]. PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION, 2018, : 288 - 289
  • [7] Massive data mining for polymorphic code detection
    Payer, U
    Teufl, P
    Kraxberger, S
    Lamberger, M
    [J]. COMPUTER NETWORK SECURITY, PROCEEDINGS, 2005, 3685 : 448 - 453
  • [8] Live Code Smell Detection of Data Clumps in an Integrated Development Environment
    Baumgartner, Nils
    Adleh, Firas
    Pulvermueller, Elke
    [J]. PROCEEDINGS OF THE 18TH INTERNATIONAL CONFERENCE ON EVALUATION OF NOVEL APPROACHES TO SOFTWARE ENGINEERING, ENASE 2023, 2023, : 64 - 76
  • [9] Polyglot Code Smell Detection for Infrastructure as Code with GLITCH
    Saavedra, Nuno
    Goncalves, Joao
    Henriques, Miguel
    Ferreira, Joao F.
    Mendes, Alexandra
    [J]. 2023 38TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE, 2023, : 2042 - 2045
  • [10] Leveraging code smell detection with inter-smell relations
    Pietrzak, Blazej
    Walter, Bartosz
    [J]. EXTREME PROGRAMMING AND AGILE PROCESSES IN SOFTWARE ENGINEERING, PROCEEDINGS, 2006, 4044 : 75 - 84