[发明专利]一种基于文本词性和程序调用关系的软件缺陷定位方法有效

专利信息
申请号: 201510492477.0 申请日: 2015-08-12
公开(公告)号: CN105159822B 公开(公告)日: 2017-08-29
发明(设计)人: 周宇;童燕翔;王立松 申请(专利权)人: 南京航空航天大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 江苏圣典律师事务所32237 代理人: 贺翔
地址: 210016 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 文本 词性 程序 调用 关系 软件 缺陷 定位 方法
【说明书】:

技术领域

发明属于计算机技术领域,尤其指代一种基于文本词性和程序调用关系的软件缺陷定位方法。

背景技术

软件缺陷的及时修复对提高用户满意度相当重要,也是一个软件发展的重要环节。在软件发展周期中,软件缺陷定位成为维护时一个非常困难的工作,尤其是对那些不熟悉缺陷模块的开发者来说,更是耗时和令人烦躁的工作。通常使用软件缺陷跟踪系统(BTS)来管理软件缺陷以及需求。当一个软件发布以后,相应的BTS就负责收集程序测试人员或者终端用户提交的对软件缺陷的描述报告(即缺陷报告),软件的开发人员可以通过这些报告对软件进行适当的维护和完善。开发人员需要仔细阅读缺陷报告里的内容,发现关键字,例如:类名或者方法名,检索数以万计的源代码文件从而找出缺陷在源代码中的位置。为了减轻开发人员的工作,许多研究者开始着手提出软件缺陷定位的方法。

软件缺陷定位是软件工程领域中被广泛研究的主题,其大致可分为动态和静态的方法,动态方法使用预先设计好的测试用例对程序进行测试,在程序运行过程中收集程序的执行信息,通过收集的信息来判断缺陷可能存在的位置。最常用的是基于频谱的动态定位方法,定位的粒度可以精确到一个执行语句。可是动态定位也存在着测试用例的生成以及选择等复杂的问题。

静态的缺陷定位多采用信息检索的方法,通过分析代码和缺陷报告的特征,用这些特征计算得出缺陷与代码的相关性。与动态的缺陷定位方法不同,静态的方法不需要测试用例,可以使用开源软件数据来检验方法的有效性。静态的方法通常定位到代码文件级或者是程序方法级。信息检索中的多个模型被运用,如潜在语义索引模型,向量空间潜以及狄利克雷分配模型,这些模型都是将缺陷报告作为查询,而将代码文件作为检索的对象,通过计算缺陷报告与代码的相关性来定位缺陷。

近年来,研究者们利用缺陷之间的相似性来提高缺陷定位的效果。因为相似的缺陷可能出现在同一个位置,Zhou等人结合缺陷之间的相似性和缺陷文件之间的相似性,进一步提高缺陷定位的精度,并在2012年第34届软件工程国际会议ICSE发表论文,提出软件缺陷定位方法BugLocator,其中若该方法参数α=0,则表示该方法不运用相似缺陷报告这一模块。从此以后,更多的缺陷信息,包括缺陷的历史信息、相似的缺陷报告和文件的结构信息都被利用来提升缺陷定位。这些研究在对于缺陷文本的处理上,对所有词性的词项都已是一视同仁,也没有利用缺陷文件程序的调用关系。

发明内容

针对于上述问题,本发明的目的在于提供一种基于文本词性和程序调用关系的软件缺陷定位方法,利用文本词性调整词项权值,程序间的调用关系校正相似度值,以及根据程序员要求进行源代码文件滤除和最终结果输出,达到提高缺陷定位准确度的目的。

为达到上述目的,本发明的一种基于文本词性和程序调用关系的软件缺陷定位方法,包括步骤如下:

1)提取缺陷报告里小结和描述的文本信息,并标记文本词项的词性,然后根据词性标记提高缺陷报告文本信息中名词词项的权重并且整体提高小结模块所有词项的权重;

2)根据开发者的需求参数ran滤除源代码文件不需要的成分,同时对缺陷报告文本信息和滤除后的源代码文件进行预处理,得到特征词集合;

3)利用信息检索技术建立模型,计算缺陷报告与源代码文件的相似度,并根据相似度的大小生成可疑缺陷文件列表;

4)提取缺陷报告文本信息里所含的类名并找到其对应的源代码文件,找出这些源代码文件在列表中排名最高的源代码文件,通过字符串检索找到排名最高源代码文件调用的所有源代码文件,即调用源文件,适当提高调用源文件的相似度值来校正原有排名;

5)根据开发者的需求参数ran输出缺陷报告对应的缺陷源代码文件或者缺陷源代码文件列表。

优选地,所述步骤1)中标记词性是由开源的词性标记器来实现,输入词性标记器的为一个完整的句子,且逐句进行词性标记。

优选地,所述步骤1)还包括:通过增加名词与其他词性词项的频数比来实现其在整体文本中权重的提高。

优选地,所述步骤1)还包括:词项权重调整后,词项标记将会被删除,以释放内存。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510492477.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top