基于混合图表示的软件变更预测方法
作者:
作者单位:

作者简介:

杨馨悦(1997-), 女, 硕士生, CCF学生会员, 主要研究领域为软件工程, 软件变更预测;刘安(1981-), 男, 博士, 教授, CCF专业会员, 主要研究领域为数据库与工业软件, 众包计算, 数据安全与隐私;赵雷(1972-), 男, 博士, 教授, CCF高级会员, 主要研究领域为数据管理与数据分析, 数据智能与软件, 知识工程, 机器学习;陈林(1979-), 男, 博士, 副教授, CCF高级会员, 主要研究领域为软件分析与测试;章晓芳(1980-), 女, 博士, 教授, CCF专业会员, 主要研究领域为智能软件工程, 软件分析、测试与维护.

通讯作者:

章晓芳, E-mail: xfzhang@suda.edu.cn

中图分类号:

TP311

基金项目:

国家自然科学基金(62172202, 61872177); 江苏省自然科学基金 (BK20211307); 江苏省高等学校基础科学研究重大项目(19KJA610002, 22KJA520008); 软件新技术与产业化协同创新中心资助项目; 江苏高校优势学科建设工程


Software Change Prediction Based on Hybrid Graph Representation
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    软件变更预测旨在识别出具有变更倾向的模块, 可以帮助软件管理者和开发人员有效地分配资源, 降低维护开销. 从代码中提取有效的特征在构建准确的预测模型中起着重要作用. 近年来, 研究人员从利用传统的手工特征进行预测转向具有强大表示能力的语义特征, 他们从抽象语法树(abstract syntax tree, AST)的节点序列中提取语义特征构建模型. 但已有研究忽略了AST的结构信息以及代码中丰富的语义信息, 如何提取代码的语义特征仍然是一个具有挑战性的问题. 为此, 提出一种基于混合图表示的变更预测方法. 该模型首先结合AST、控制流图(control flow graph, CFG)、数据流图(data flow graph, DFG)等结构信息构建代码的程序图表示, 接着利用图神经网络学习出程序图的语义特征, 根据该特征预测变更倾向性. 所提模型能够融合各种语义信息以更好地表征代码. 在多组变更数据集上开展与最新变更预测方法的对比实验, 验证了所提方法的有效性.

    Abstract:

    Software change prediction, aimed at identifying change-prone modules, can help software managers and developers allocate resources efficiently and reduce maintenance overhead. Extracting effective features from the code plays a vital role in the construction of accurate prediction models. In recent years, researchers have shifted from traditional hand-crafted features to semantic features with powerful representation capabilities for prediction. They extracted semantic features from abstract syntax tree (AST) node sequences to build models. However, existing studies have ignored the structural information in the AST and the rich semantic information in the code. How to extract the semantic features of the code is still a challenging problem. For this reason, the study proposes a change prediction method based on hybrid graph representation. To start with, the model combines AST, control flow graph (CFG), data flow graph (DFG), and other structural information to construct the program graph representation of the code. Then, it uses the graph neural network to learn the semantic features of the program graph and the features obtained to predict change-proneness. The model can integrate various semantic information to represent the code better. The effectiveness of the proposed method is verified by comparing it with the latest change prediction methods on various change datasets.

    参考文献
    相似文献
    引证文献
引用本文

杨馨悦,刘安,赵雷,陈林,章晓芳.基于混合图表示的软件变更预测方法.软件学报,2024,35(8):3824-3842

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2022-08-21
  • 最后修改日期:2022-11-17
  • 录用日期:
  • 在线发布日期: 2023-09-13
  • 出版日期:
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号