论文部分内容阅读
缺陷报告是最重要的软件制品之一,它们记录着各个缺陷的详细信息,在软件的开发和维护过程中发挥着极其重要的作用。目前,软件开源社区基本都拥有自己的缺陷报告平台,用来提出、讨论和解决一系列在软件开发与维护过程中所遇到的缺陷。一篇缺陷报告,通常是由某位开发人员添加,而后有若干开发者添加评论来讨论解决方案。很多缺陷报告中包含几十条开发者的评论信息。由于软件缺陷报告数量快速增长以及开源社区中缺陷报告撰写形式的开放性,开发者们很难高效地在海量冗长杂乱的缺陷报告中查找和提取有用信息。 目前,缺陷报告摘要技术可以一定程度上解决上述问题。在人们阅读缺陷报告时,展示缺陷报告的摘要可以帮助人们迅速地了解该缺陷报告的主要内容,从而提升缺陷报告管理效率。然而当前缺陷报告摘要技术的准确率以及摘要的可读性有待提升。本文旨在通过挖掘缺陷报告文本中的意图来改进当前的摘要技术,主要研究工作包括: 缺陷报告文本的意图分类。本文通过对缺陷报告文本的分析,并结合其他软件制品(如应用评论文本、开发邮件)的意图类别,提出了缺陷报告的意图类别体系。本文标注了2360条缺陷报告句子样本的意图类别,并通过基于语言模式规则和机器学习的意图自动分类算法对文本句进行自动意图分类。实验证明本文所提意图分类算法与之前纯规则算法相比适用性更强,能够以总体60%以上的准确率有效地对缺陷报告文本中的8种意图进行自动分类。 缺陷报告的长文摘要。本文提出了一种基于意图挖掘的缺陷报告长文摘要技术——IBRS,它利用意图分类对原有的BRC摘要技术进行了改进,成功为长篇的缺陷报告提取摘要。本文通过在两种语料上的对比实验证明了IBRS摘要算法的正确率、召回率、F-score以及加权正确率均高于原有的缺陷报告摘要算法,最高达到了5%的提升。 缺陷报告的多文档摘要。缺陷报告库中存在很多描述同一个缺陷的重复缺陷报告。多篇重复缺陷报告能够对某个缺陷进行更全面的描述。人们在查找某个缺陷时,很多时候不仅仅浏览一篇缺陷报告,也会浏览重复的缺陷报告中提供的信息。所以本文针对多篇重复缺陷报告进行了摘要研究,提出了一种Intention-MMR算法。最终通过用户调研的方式进行评估,结果证明针对多篇重复报告的摘要能够更丰富多样地描述某个缺陷。 缺陷报告的摘要工具。该工具综合运用上述研究成果实现了对缺陷报告摘要的提取,并进行可视化展示。另外该工具根据文本的意图类别对摘要内容进行了的重组,将更重要类别的信息聚集、优先展示,从而提高了缺陷报告摘要的可读性。