TY - JOUR
T1 - 面向软件缺陷预测的网络嵌入特征研究
AU - Liu, Jingwen
AU - Jin, Wuxia
AU - Qu, Yu
AU - Jin, Yangxu
AU - Fan, Ming
N1 - Publisher Copyright:
© Copyright 2021, Institute of Information Engineering, the Chinese Academy of Sciences. All rights reserved.
PY - 2021/5
Y1 - 2021/5
N2 - Researchers predict software defects based on software networks modeled from code dependencies, revision history, and collaborative development. Recently, network embedding techniques have been widely used for software network analysis, significantly improving the defect prediction performance. Our study reveals that different combinations of software associated networks and network embeddings will produce diverse prediction performance. Concretely, this work constructs three kinds of software associated networks (i.e., Class Dependency Network, Change Coupling Network, and Developer Contribution Network), analyzes the software structure preserved by 6 kinds of network embedding methods, and compares their performance in defect prediction. The results on 12 open-source Java systems indicate that, on Class Dependency Network and Change Coupling Network, after the traditional features combined with network embedding features, the defect prediction performance is enhanced significantly; DeepWalk, Grarep and Node2vec are better at learning network homophily, thus producing better prediction performance; the structure features learned by network embedding and their prediction performance by them are sensitive to embedding parameter settings. These results provide guidance in the selection of software associated networks and network embedding techniques for defect prediction.
AB - Researchers predict software defects based on software networks modeled from code dependencies, revision history, and collaborative development. Recently, network embedding techniques have been widely used for software network analysis, significantly improving the defect prediction performance. Our study reveals that different combinations of software associated networks and network embeddings will produce diverse prediction performance. Concretely, this work constructs three kinds of software associated networks (i.e., Class Dependency Network, Change Coupling Network, and Developer Contribution Network), analyzes the software structure preserved by 6 kinds of network embedding methods, and compares their performance in defect prediction. The results on 12 open-source Java systems indicate that, on Class Dependency Network and Change Coupling Network, after the traditional features combined with network embedding features, the defect prediction performance is enhanced significantly; DeepWalk, Grarep and Node2vec are better at learning network homophily, thus producing better prediction performance; the structure features learned by network embedding and their prediction performance by them are sensitive to embedding parameter settings. These results provide guidance in the selection of software associated networks and network embedding techniques for defect prediction.
KW - Defect prediction
KW - Network embedding
KW - Software associated network
UR - https://www.scopus.com/pages/publications/85107152688
U2 - 10.19363/J.cnki.cn10-1380/tn.2021.05.03
DO - 10.19363/J.cnki.cn10-1380/tn.2021.05.03
M3 - 文章
AN - SCOPUS:85107152688
SN - 2096-1146
VL - 6
SP - 29
EP - 53
JO - Journal of Cyber Security
JF - Journal of Cyber Security
IS - 3
ER -