软件学报

北大核心,INSPEC,JST,Pж(AJ),EI

国内刊号:11-2560/TP

国际刊号:1000-9825

软件学报杂志2022年第11期:基于源代码扩展信息的细粒度缺陷定位方法

发布日期:

作者:李晓卓,卿笃军,贺也平,马恒太

单位:李晓卓,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004911,卿笃军,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004902,贺也平,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 100049;计算机科学国家重点实验室(中国科学院 软件研究所), 北京 10019003,马恒太,基础软件国家工程研究中心(中国科学院 软件研究所), 北京 100190;中国科学院大学, 北京 10004904

关键词:缺陷定位;演化程序;信息检索;语义信息;伪孪生网络

基金:核高基国家科技重大专项(2014ZX01029101);中国科学院战略性先导科技专项(XDA-Y01-01)

基于信息检索的缺陷定位技术,利用跨语言的语义相似性构造检索模型,通过缺陷报告定位源代码错误,具有方法直观、通用性强的特点.但是由于传统基于信息检索的缺陷定位方法将代码作为纯文本进行处理,只利用了源代码的词汇语义信息,导致在细粒度缺陷定位中面临候选代码语义匮乏产生的准确性低的问题,其结果有用性还有待改进.通过分析程序演化场景下代码改动与缺陷产生间的关系,提出一种基于源代码扩展信息的细粒度缺陷定位方法,以代码词汇语义显性信息及代码执行隐性信息共同丰富源代码语义实现细粒度缺陷定位.利用定位候选点的语义相关上下文丰富代码量,以代码执行中间形式的结构语义实现细粒度代码的可区分,同时以自然语言语义指导基于注意力机制的代码语言表征生成,实现细粒度代码与自然语言间的语义映射,从而实现细粒度缺陷定位方法FlowLocator.实验分析结果表明:与经典的IR缺陷定位方法相比,该方法定位准确性在Top-N排名、平均准确率及平均倒数排名上都有显著提高.

来源:2022年第11期

《软件学报》期刊编辑部

查看软件学报杂志2022年第11期

联系我们

  • 地址:北京8718信箱
  • 电话:010-62562563
  • E-mail:jos (a) iscas. ac. cn

咨询工作人员