LineFlowDP: A Deep Learning-Based Two-Phase Approach for Line-Level Defect Prediction

被引:0
|
作者
Yang, Fengyu [1 ,2 ]
Zhong, Fa [1 ,2 ]
Zeng, Guangdong [1 ,2 ]
Xiao, Peng [1 ,2 ]
Zheng, Wei [1 ,2 ]
机构
[1] Nanchang Hangkong Univ, Sch Software, Nanchang 330063, Peoples R China
[2] Nanchang Hangkong Univ, Software Testing & Evaluat Ctr, Nanchang 330063, Peoples R China
关键词
Software quality assurance; Line-level software defect prediction; Graph neural network; Social network analysis; PROGRAM DEPENDENCE GRAPH; CENTRALITY;
D O I
10.1007/s10664-023-10439-z
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software defect prediction plays a key role in guiding resource allocation for software testing. However, previous defect prediction studies still have some limitations: (1) the granularity of defect prediction is still coarse, so high-risk code statements cannot be accurately located; (2) in fine-grained defect prediction, the semantic and structural information available in a single line of code is limited, and the content of code semantic information is not sufficient to achieve semantic differentiation. To address the above problems, we propose a two-phase line-level defect prediction method based on deep learning called LineFlowDP. We first extract the program dependency graph (PDG) of the source files. The lines of code corresponding to the nodes in the PDG are extended semantically with data flow and control flow information and embedded as nodes, and the model is further trained using an relational graph convolutional network. Finally, a graph interpreter GNNExplainer and a social network analysis method are used to rank the lines of code in the defective file according to risk. On 32 datasets from 9 projects, the experimental results show that LineFlowDP is 13%-404% more cost-effective than four state-of-the-art line-level defect prediction methods. The effectiveness of the flow information extension and code line risk ranking methods was also verified via ablation experiments.
引用
收藏
页数:49
相关论文
共 50 条
  • [1] LineFlowDP: A Deep Learning-Based Two-Phase Approach for Line-Level Defect Prediction
    Fengyu Yang
    Fa Zhong
    Guangdong Zeng
    Peng Xiao
    Wei Zheng
    Empirical Software Engineering, 2024, 29
  • [2] DeepLineDP: Towards a Deep Learning Approach for Line-Level Defect Prediction
    Pornprasit, Chanathip
    Tantithamthavorn, Chakkrit
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2023, 49 (01) : 84 - 98
  • [3] Deep learning or classical machine learning? An empirical study on line-level software defect prediction
    Zhou, Yufei
    Liu, Xutong
    Guo, Zhaoqiang
    Zhou, Yuming
    Zhang, Corey
    Qian, Junyan
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2024, 36 (10)
  • [4] Two Deep Learning Networks for Rail Surface Defect Inspection of Limited Samples With Line-Level Label
    Zhang, Defu
    Song, Kechen
    Wang, Qi
    He, Yu
    Wen, Xin
    Yan, Yunhui
    IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS, 2021, 17 (10) : 6731 - 6741
  • [5] A deep learning approach for line-level Amharic Braille image recognition
    Asfaw, Nega Agmas
    Belay, Birhanu Hailu
    Alemu, Kassawmar Mandefro
    SCIENTIFIC REPORTS, 2024, 14 (01):
  • [6] Two-Phase Deep Learning-Based EDoS Detection System
    Nhu, Chien-Nguyen
    Park, Minho
    APPLIED SCIENCES-BASEL, 2021, 11 (21):
  • [7] Segmentation and Defect Classification of the Power Line Insulators: A Deep Learning-based Approach
    Alahyari, Arman
    Hinneck, Anton
    Tariverdizadeh, Rahim
    Pozo, David
    2020 INTERNATIONAL CONFERENCE ON SMART GRIDS AND ENERGY SYSTEMS (SGES 2020), 2020, : 476 - 481
  • [8] Deep Learning-Based Defect Prediction for Mobile Applications
    Jorayeva, Manzura
    Akbulut, Akhan
    Catal, Cagatay
    Mishra, Alok
    SENSORS, 2022, 22 (13)
  • [9] Characterization of Two-Phase Flow Structure by Deep Learning-Based Super Resolution
    Gao, Zhongke
    Qu, Zhiyong
    Wang, Hongtao
    Ma, Chao
    IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS II-EXPRESS BRIEFS, 2021, 68 (02) : 782 - 786
  • [10] Line-Level Defect Prediction by Capturing Code Contexts With Graph Convolutional Networks
    Yin, Shouyu
    Guo, Shikai
    Li, Hui
    Li, Chenchen
    Chen, Rong
    Li, Xiaochen
    Jiang, He
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2025, 51 (01) : 172 - 191