李文华,李浩杰
1(青岛科技大学 信息科学技术学院,青岛 266061)
2(青岛科技大学 高密校区机电系,潍坊 261500)
软件发展的过程中,在软件工程领域软件的开源和软件系统的不断兴起和发展使得软件的开发与软件管理变得更加方便快捷.开源软件的开发管理团队通常依靠开放性的缺陷跟踪管理系统,对软件使用过程中产生的缺陷进行管理与跟踪,如:Bugzilla、Jira 等均为众人比较熟知的开放性缺陷报告提交平台.据统计,自2007年起,Eclipse 缺陷报告库中新的缺陷报告以每天30 个的速度递增[1];2001年至2010年,Mozilla 的缺陷报告库中的缺陷报告以平均每天307 个的速度增加[2].分析显示,大量的缺陷报告因为描述遗漏或不准确,而影响缺陷有效判定和缺陷修复进程,致使缺陷修复时间一般都较长[3],也存在因描述不准确而长时间得不到修复的缺陷报告.而面对需要填报的复杂缺陷报告信息,缺陷报告发布者也无法确定哪些属性是关键的、哪些需要重点描述.因此,能够区分缺陷报告的属性的重要度,不仅能够指导报告者规范缺陷报告的提交信息从而提升缺陷报告质量,也能够辅助开发者提高缺陷有效性判定和修复的效率.
Zhang 等[4]将修复过程分解为5 个阶段,发现缺陷提交后的确认阶段、缺陷分派后到开始修复的分析阶段耗时较长.Saha 等[5]对4 个开源项目进行实例研究,发现影响缺陷修复时间的因素是复杂的、多方面的,缺陷报告质量不高是主要因素,同时,调查发现由于缺……