基于监督学习的bug报告和源代码摘要

来源 :大连理工大学 | 被引量 : 0次 | 上传用户:zhengyicai2010
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
开发者在执行软件任务时,需要与软件工件如bug报告、源代码仓库等进行交互,为了获取所需要的信息,也许需要彻底地通读整个工件。然而,从bug报告和源代码中提取有价值的信息是一项十分繁琐且耗时的任务。为了高效地求解这个任务,研究者建议为软件工件自动化地建立摘要信息。在本文,为了方便开发者从bug报告和源代码仓库中高效地提取所需要的信息,我们提出使用有监督的学习技术来建立摘要信息。我们使用重复的bug报告来建立bug报告摘要信息,作为自然语言文本摘要任务的一个实例。在另一个调研中,我们执行源代码片段摘要,作为源代码到源代码摘要任务的一个实例。对于bug报告,我们开发了一种基于PageRank的bug报告摘要算法(Page Rank based Summarization Technique),简称为PRST。该算法使用三种不同的相似度度量方法,分别基于VSM.Jaccard和WordNet,来计算主bug报告和对应的重复的bug报告之间的相似度。由于公共可用的bug报告语料库中缺乏主bug报告和重复bug报告的对应关系,无法利用重复bug报告中包含的信息来执行bug报告摘要任务。因此,我们从Mozilla、KDE、Gnome和Eclipse项目中抽取出59个bug报告并建立了一个独立的bug报告语料库,称为OSCAR.同时,我们通过增加重复的bug报告来重构已有的BRC语料库,并将其作为对比语料库。我们采用几种先进的统计评价指标,即精度(Precision)、召回率(Recall),F-Score 和 Pyramid Precision,外在地评价所提出的算法的有效性。结果显示我们提出的算法能够获得相对准确的bug报告摘要信息,并且,提高了已有的有监督的bug报告和精度。同样地,为了建立源代码摘要信息,我们开发了一种基于SVM和NB分类器的代码片段摘要算法(CodeFragment Summarization,CFS)自动生成源代码片段中源到源摘要信息。在软件工件摘要范式中,我们首次引入了基于数据驱动的小规模的众包方法来帮助我们抽取源代码句法特征。我们从Eclipse 和 NetBeans官方FAQs中检索到127个代码片段并构建一个用于测试的代码片段语料库。我们同样采用先前提到的统计评价指标并比较已有的方法来验证我们提出的方法的有效性。结果显示我们的代码片段摘要器在精度上超过已有的代码片段摘要生成方法,同时句法特征对生成的摘要信息上的准确度有着重要的影响。生成的摘要信息能够有效地帮助开发者解决在手的软件任务,并有效地改善软件的性能和质量。
其他文献
市政府正式发布《大连市绿色经济发展规划》,对我市发展绿色经济进行了全面部署和系统安排,提出把大连建设成为国际知名、国内一流的绿色经济发展典范城市。围绕该《规划》内容
报纸
医疗体制改革的深入对医院管理提出了更高要求,尤其是在成本管理方面;运用目标成本法,可从源头控制医院的成本支出,并实现持续不断的优化改善,能有效增强医院的可持续发展力
2016年5月28日,"2016年食品药品法治研究方阵高端论坛"在中国政法大学"开坛",其主题是"我国卫生法体系的科学建构"。来自全国食品药品法治研究方阵各理事单位的代表、专家参加了本
目的探讨miR-373在肝细胞癌的表达及其作用。方法qRT-PCR法检测80例肝癌及癌旁灶中miR-373的表达;qRT-PCR法检测人肝细胞癌细胞株BEL7402、HepG2、Hep3b、Huh7、SMMC7721中mi
采用卧式数控镗铣床加工振动轮(图1)时,由于零件尺寸较大,且两端φ580孔同轴度要求较高,因此,工件的装夹校正比较困难,很难保证振动轮的加工质量.以往采用的校正方法是以主轴
具体介绍了蚕丝被的生产技术和工艺特点,明确了蚕丝被领域存在的假冒伪劣特征,及目前检测技术存在的不足。
农机安全生产的好坏,不仅关系到农业和农村冬济的发展,而且更关系到广大农民群众的生命财产安全,同时还会影响到农机化事业健康、全面发展。文章分析了农机安全管理存在的问题,并
近几年来我国房地产高速发展,房地产过热已经成为公众关注的焦点。本文将具体阐述我国房地产业在派生二元经济环境下的发展态势,并对其提出笔者自己的看法和建议。
在打赢脱贫攻坚战中,产业扶贫作为中央精准扶贫“五个一批”中“发展生产脱贫一批”的重头戏,以“造血式、开发式”扶贫方略,把贫困户植入产业链条之中,围绕某种资源、产品建