[发明专利]一种基于文本词性和程序调用关系的软件缺陷定位方法有效
| 申请号: | 201510492477.0 | 申请日: | 2015-08-12 |
| 公开(公告)号: | CN105159822B | 公开(公告)日: | 2017-08-29 |
| 发明(设计)人: | 周宇;童燕翔;王立松 | 申请(专利权)人: | 南京航空航天大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 江苏圣典律师事务所32237 | 代理人: | 贺翔 |
| 地址: | 210016 江*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 文本 词性 程序 调用 关系 软件 缺陷 定位 方法 | ||
1.一种基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,包括步骤如下:
1)提取缺陷报告里小结和描述的文本信息,并标记文本词项的词性,然后根据词性标记提高缺陷报告文本信息中名词词项的权重并且整体提高小结模块所有词项的权重;
2)根据开发者的需求参数ran滤除源代码文件不需要的成分,同时对缺陷报告文本信息和滤除后的源代码文件进行预处理,得到特征词集合;
3)利用信息检索技术建立模型,计算缺陷报告与源代码文件的相似度,并根据相似度的大小生成可疑缺陷文件列表;
4)提取缺陷报告文本信息里所含的类名并找到其对应的源代码文件,找出这些源代码文件在列表中排名最高的源代码文件,通过字符串检索找到排名最高源代码文件调用的所有源代码文件,即调用源文件,适当提高调用源文件的相似度值来校正原有排名;
5)根据开发者的需求参数ran输出缺陷报告对应的缺陷源代码文件或者缺陷源代码文件列表;
其中,所述步骤2)和5)中的布尔类型的开发者需求参数ran有两个值,即true和false;如果ran值为true,则表示开发者针对单个缺陷报告只需要一个可疑的缺陷源代码文件,源代码文件滤除操作后将只留下类名和方法名,并且最后的输出为与缺陷报告相似度值最高的源代码文件;如果ran值为false,则表示开发者针对单个缺陷报告需要N个可疑缺陷源代码文件,源代码文件滤除操作将只删除源代码里的注释,并且最后的输出为一个可疑缺陷源代码文件列表。
2.根据权利要求1所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,所述步骤1)中标记词性是由开源的词性标记器来实现,输入词性标记器的为一个完整的句子,且逐句进行词性标记。
3.根据权利要求2所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,所述步骤1)还包括:通过增加名词与其他词性词项的频数比来实现其在整体文本中权重的提高。
4.根据权利要求3所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,所述步骤1)还包括:词项权重调整后,词项标记将会被删除,以释放内存。
5.根据权利要求1所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,对于缺陷报告和滤除后源代码文件的预处理包括分词,去停用词和提取词干;且两者使用的停用词集合不同,特征词项是缺陷报告预处理后的词项。
6.根据权利要求1所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,所述步骤3)中提到的基于信息检索的建立的模型为向量空间模型,它将缺陷文件和源代码文件表示为一个个的词向量,词项在一个缺陷报告或者源代码文件的权重是由它在其中的词频和数据集中的逆文档频率决定的。
7.根据权利要求6所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,相似度计算主要是计算缺陷报告对应的词向量和源代码文件所对应的词向量的Cosine值,值越大表示对应的缺陷报告和源代码文件越相近,源代码文件是缺陷报告所描述问题的位置的可能性就越大。
8.根据权利要求1所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,所述步骤4)中提到的字符串检索是指扫描最高排名源代码文件的所有词项,若扫到的词项是一个源代码文件的名字,那么这个源代码文件就是调用源文件。
9.根据权利要求8所述的基于文本词性和程序调用关系的软件缺陷定位方法,其特征在于,调用源文件原来相似值的70%加上调用它的源代码文件的相似值的30%,得到该调用源文件新的相似度值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京航空航天大学,未经南京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510492477.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于自动化测试的需求跟踪系统
- 下一篇:一种应用程序的恢复方法及系统





