Deep Learning Based Feature Envy Detection

被引:63
|
作者
Liu, Hui [1 ]
Xu, Zhifeng [1 ]
Zou, Yanzhen [2 ,3 ]
机构
[1] Beijing Inst Technol, Sch Comp Sci & Technol, Beijing, Peoples R China
[2] Peking Univ, Minist Educ, Key Lab High Confidence Software Technol, Beijing, Peoples R China
[3] Peking Univ, Sch Elect Engn & Comp Sci, Beijing, Peoples R China
基金
中国国家自然科学基金;
关键词
Feature Envy; Deep Learning; Software Refactoring; Code Smells; SMELLS; REFACTORINGS;
D O I
10.1145/3238147.3238166
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software refactoring is widely employed to improve software quality. A key step in software refactoring is to identify which part of the software should be refactored. To facilitate the identification, a number of approaches have been proposed to identify certain structures in the code (called code smells) that suggest the possibility of refactoring. Most of such approaches rely on manually designed heuristics to map manually selected source code metrics to predictions. However, it is challenging to manually select the best features, especially textual features. It is also difficult to manually construct the optimal heuristics. To this end, in this paper we propose a deep learning based novel approach to detecting feature envy, one of the most common code smells. The key insight is that deep neural networks and advanced deep learning techniques could automatically select features (especially textual features) of source code for feature envy detection, and could automatically build the complex mapping between such features and predictions. We also propose an automatic approach to generating labeled training data for the neural network based classifier, which does not require any human intervention. Evaluation results on open-source applications suggest that the proposed approach significantly improves the state-of-the-art in both detecting feature envy smells and recommending destinations for identified smelly methods.
引用
收藏
页码:385 / 396
页数:12
相关论文
共 50 条
  • [21] Automatic detection of Feature Envy and Data Class code smells using machine learning
    Skipina, Milica
    Slivka, Jelena
    Luburic, Nikola
    Kovacevic, Aleksandar
    EXPERT SYSTEMS WITH APPLICATIONS, 2024, 243
  • [22] Robotic Grasping of Unknown Objects Based on Deep Learning-Based Feature Detection
    Khor, Kai Sherng
    Liu, Chao
    Cheah, Chien Chern
    SENSORS, 2024, 24 (15)
  • [23] Deep Multi-Scale Feature Fusion Target Detection Algorithm Based on Deep Learning
    Liu Xin
    Chen Siyi
    Chen Xiaolong
    Du Xinhao
    LASER & OPTOELECTRONICS PROGRESS, 2021, 58 (12)
  • [24] A Deep Learning Approach to Android Malware Feature Learning and Detection
    Su, Xin
    Zhang, Dafang
    Li, Wenjia
    Zhao, Kai
    2016 IEEE TRUSTCOM/BIGDATASE/ISPA, 2016, : 244 - 251
  • [25] Feature envy detection based on cross-graph local semantics matching
    Yang, Quanxin
    Yu, Dongjin
    Chen, Xin
    Xu, Yihang
    Yan, Wangliang
    Hu, Bin
    INFORMATION AND SOFTWARE TECHNOLOGY, 2024, 174
  • [26] FDLM: An enhanced feature based deep learning model for skin lesion detection
    Garg, Shelly
    Jindal, Balkrishan
    MULTIMEDIA TOOLS AND APPLICATIONS, 2023, 83 (12) : 36115 - 36127
  • [27] Deep Learning Based Cost Constraint Algorithm for Intrusion Detection Feature Extraction
    Liu, Yun
    Zheng, Wenfeng
    Zhang, Yi
    2021 3RD INTERNATIONAL CONFERENCE ON MACHINE LEARNING, BIG DATA AND BUSINESS INTELLIGENCE (MLBDBI 2021), 2021, : 520 - 526
  • [28] Improved bare PCB defect detection approach based on deep feature learning
    Zhang, Can
    Shi, Wei
    Li, Xiaofei
    Zhang, Haijian
    Liu, Hong
    JOURNAL OF ENGINEERING-JOE, 2018, (16): : 1415 - 1420
  • [29] Ensemble classification for intrusion detection via feature extraction based on deep Learning
    Yousefnezhad, Maryam
    Hamidzadeh, Javad
    Aliannejadi, Mohammad
    SOFT COMPUTING, 2021, 25 (20) : 12667 - 12683
  • [30] Deep Feature Learning Based Fault Detection with High-Frequency Signals
    Jiang, Zhengyi
    Liu, Chongdang
    Zhang, Linxuan
    2022 IEEE INTERNATIONAL CONFERENCE ON PROGNOSTICS AND HEALTH MANAGEMENT (ICPHM), 2022, : 101 - 107