[发明专利]一种工作量感知的bug定位技术有效性评价方法在审
申请号: | 201610098327.6 | 申请日: | 2016-02-22 |
公开(公告)号: | CN105786704A | 公开(公告)日: | 2016-07-20 |
发明(设计)人: | 周毓明;赵斐;杨已彪;卢红敏;徐宝文 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210093 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 工作量 感知 bug 定位 技术 有效性 评价 方法 | ||
技术领域
本发明属于软件工程领域,尤其是软件bug定位领域,且特别是有关于一种工作量感知 的bug定位技术有效性评价方法。
背景技术
随着软件技术的不断发展,用户对软件质量要求越来越高,软件开发者也在不断地寻求 提高软件质量的方法以满足用户需求。软件缺陷是计算机软件或程序中存在的某种破坏正常 运行能力的问题、错误,或者隐藏的功能缺陷,是系统所需要实现的某种功能的失效或违背。 软件缺陷伴随着软件开发流程的各个过程,需求分析阶段如果没有充分弄清需求将会带来很 多不必要的软件缺陷,开发过程中没有采用优秀的管理方法也会导致很多软件缺陷。审查和 修复软件缺陷需要投入大量人力物力,而且占据了软件生命周期中的大部分时间。
Bug定位技术是一项旨在定位软件开发过程中引入的缺陷的方法,帮助开发人员在bug 报告产生时能快速定位bug可能出现的位置,及时地分配开发人员有针对性地对相应代码进 行审查,有效地分配有限的资源,快速识别出可能存在bug的代码并修复,从而更好地控制 和提升软件产品的质量。
在传统的bug定位技术中,准确度(Accuracy)、平均准确率(MeanAveragePrecision, MAP)和序位倒数均值(MeanReciprocalRank)是最常用三种评价bug定位技术性能的方法, 它们计算复杂度低、物理含义清晰。但不幸的是,我们研究发现,这些方法在评价bug定位 技术的时候并没有考虑开发人员审核源代码文件所需要的工作量,而是仅仅关注了源代码文 件在推荐序列中位置。因此,我们认为这些评价方法并不能真实地反应一个bug定位技术的 好坏。
发明内容
本发明目的在于提供一种工作量感知的bug定位技术有效性评价方法。基于本发明,在 评价bug定位技术的时候,能有效评估一个技术在工作量感知条件下的性能,使得评价结果 更加客观和可信。
为达成上述目的,本发明提出一种工作量感知的bug定位技术有效性评价方法。该方法 包括下列步骤:
1)软件bug报告信息的收集:软件项目的bug报告信息(包括摘要、描述、提交和修复 时间、提交ID和修改的源代码文件等信息)存储于软件缺陷追踪系统中(如BugZilla和Jira), 从其中收集已被修复的bug报告信息;
2)源代码文件工作量的收集:版本控制系统记录了软件开发过程中所有历史提交的信息 (包含该次提交修改了哪些文件、提交人、时间以及日志等信息)。根据版本库中记录的这 些历史信息以及步骤1)中得出的bug报告信息,挖掘出与每个bug报告相对应的代码快照 中源代码文件的代码行数;
3)源代码文件序列的生成:对于一个bug定位技术,利用其为每一个bug报告生成相应 的源代码文件序列(也即源代码文件的排序),排在前面的代码文件和bug报告的相似值更 大。同时,每个源代码文件会被打上一个标签,表示这个源代码文件是否与bug报告相关;
4)评价指标的计算:根据步骤3)得到的源代码文件序列,为bug定位技术计算相应的 工作量感知指标,各指标定义如下:
末位平均工作量(MeanLastEffort,MLE)表示bug定位技术为找到最后一个相关的代 码文件平均所需要的工作量。值越小,表示在工作量感知下bug定位技术性能越好,计算公 式如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610098327.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:网页测试方法及装置
- 下一篇:基于脚本的移动终端功耗自动化测试系统