arrow
返回

Defect prediction using deep learning with Network Portrait Divergence for software evolution

delete2022-06-07
delete2
PRE
AI
V
Vijay Walunj *
G
Gharib Gharibi
R
Rakan Alanazi
Y
Yugyung Lee
DOI:10.1007/s10664-022-10147-0delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Understanding software evolution is essential for software development tasks, including debugging, maintenance, and testing. As a software system evolves, it grows in size and becomes more complex, hindering its comprehension. Researchers proposed several approaches for software quality analysis based on software metrics. One of the primary practices is predicting defects across software components in the codebase to improve agile product quality. While several software metrics exist, graph-based metrics have rarely been utilized in software quality. In this paper, we explore recent network comparison advancements to characterize software evolution and focus on aiding software metrics analysis and defect prediction. We support our approach with an automated tool named GraphEvoDef. Particularly, GraphEvoDef provides three major contributions: (1) detecting and visualizing significant events in software evolution using call graphs, (2) extracting metrics that are suitable for software comprehension, and (3) detecting and estimating the number of defects in a given code entity (e.g., class). One of our major findings is the usefulness of the Network Portrait Divergence metric, borrowed from the information theory domain, to aid the understanding of software evolution. To validate our approach, we examined 29 different open-source Java projects from GitHub and then demonstrated the proposed approach using 9 use cases with defect data from the the PROMISE dataset. We also trained and evaluated defect prediction models for both classification and regression tasks. Our proposed technique has an 18% reduction in the mean square error and a 48% increase in squared correlation coefficient over the state-of-the-art approaches in the defect prediction domain.
Keyword:
Static code analysis
Call graph
Program comprehension
Software evolution
Metric analysis
Defect prediction

期刊

Empirical Software Engineering 封面图
Empirical Software Engineering
IF:
3.6
论文数:
2.0K
被引数:
5.3K

机构

University of Missouri System 封面图
University of Missouri System
学者数:
3.0W
论文数: 2.7W
被引数: 75
引用论文

引用论文

Deep learning based software defect prediction基于深度学习的软件缺陷预测
err2020-04-01
err98
PREAI
errQiao, Lei; Li, Xuesong; Umer, Qasim; Guo, Ping
err分享
err收藏
Novel Thiourea Derivatives Bearing Sulfonamide Moiety as Anticancer Agents Through COX-2 Inhibition
err2017-10-02
err0
PREAI
errMostafa M. Ghorab; Mohamed S.A. El-Gaby; Mansour S. Alsaid; Yaseen A.M.M. Elshaier; Aiten M. Soliman; Fardous F. El-Senduny; Farid A. Badria; Abdelrahman Y.A. Sherif
err分享
err收藏
Graphlet-based Characterization of Directed Networks
err2016-10-13
err78
errOAAI
errSarajlic, Anida; Malod-Dognin, Noel; Yaveroglu, Omer Nebil; Przulj, Natasa
err分享
err收藏
In Situ Generation and Heck Coupling of Alkenes in Superheated Water
err2002-05-01
err0
PREAI
errJon Diminnie; Sean Metts; Edith J. Parsons
err分享
err收藏
err分享
err收藏
学者 查看更多内容