【软件分析与挖掘】BOAT: An Experimental Platform for Researchers to Comparatively and Reproducibly Evaluate Bug Localization Techniques

摘要:

目前有许多的bug定位技术,但是,由于他们基于不同的数据集,而且有些数据集还不是公开的,甚至有些技术只应用于小数据集,不具有通用性,因此,不好比较这些技术之间的优劣。

因此,BOAT应运而生。BOAT是指:Bug lOcalization experimental plATform.这是一个web平台,开发者注册之后,可以在这上面上传他们的bug定位技术,因为在这个平台上测试的数据集是相同的,所以与其他的bug定位技术具有可比性。

地址:http://www.vlis.zju.edu.cn/blp.     (不知道是什么原因,不能访问 =.=)


S1   Introduction

主要介绍动机,和摘要基本相同。


S2   BOAT PLATFORM

BOAT由3个模块组成:

  • Data Collection Component:运行软件项目,并分析它们的bug跟踪系统和版本控制系统(从中提取日志,并分析每次提交过后,是否修复了相应的bug),BOAT利用正则表达式来判断日志中是否存在bug,如果存在,则从相应的bug跟踪系统中获取bug的细节。BOAT将分组提交,修复相似的bug report。通过这些信息,对于每一个已经提交了的bug report,修复源代码。这些已经提取出来的信息存在数据库中,供BOAT其他的模块使用。注意到,BOAT无需一次性执行大量的工程,它可以不断增加bug report以及相应的buggy文件,因此,BOAT会不断包含更多的report。
  • Local Debugging Component:BOAT支持开发者在他们的本地环境下,执行他们的bug定位程序。目标就是当开发者上传他们的可执行文件时,减少调试的影响。

  • Remote Execution Component:执行上传的可执行文件,通过Data Collection component 提取出来的数据集,并返回结果给开发者。

与此同时,开发者可以通过一个配置文件来管理BOAT如何执行上传的可执行文件。在这个配置文件中,若干任务被指定。每个任务都指定一个bug定位算法用于执行算法工程。当配置文件设定好之后,remote execution模块将执行被选中的工程中所指定的bug report。开发者将收到一封邮件,告知执行详细情况。如果任务成功执行,则通过几个指标对其优劣程度进行排序。方便开发者之间比较。


S3   现有的数据集和技术

6080bug  report

29 开源系统


S4   related work

与TraceLab(追踪实验平台)相比,BOAT有何不同?

  • 目标问题和数据集。TraceLab是一个通用的可回溯回复的平台,主要关注程序代码的连接需求。数据集小。

BOAT关注代码定位,主要搜集bug report;

  • 计算资源支持。为了使用TraceLab,开发者需要下载并安装他们的机器和计算资源。

BOAT为开发者提供计算资源,并管理可执行文件。

  • 支持和评估。为了比较,TraceLab需要提交他们的代码。

BOAT会自动与多种技术进行比较。

为了满足大规模特征定位基准。基于基准,Xing等人提出Linux kernel,本文的工作与其的不同之处:

  • 实验平台和基准:本文不仅提供一个基准,还提供了一个平台来支持研究人员比较和评估他们的算法;
  • 数据集:Xing等人的数据集主要是文本描述和代码。本文的数据集主要是bug report以及他们修复的bug。

S6   结论和以后研究方向

将增加更多的数据集,实现更多的bug定位算法,增加更多的度量方式,并通过BOAT组织比赛。

时间: 2024-10-02 17:54:26

【软件分析与挖掘】BOAT: An Experimental Platform for Researchers to Comparatively and Reproducibly Evaluate Bug Localization Techniques的相关文章

【软件分析与挖掘】Multiple kernel ensemble learning for software defect prediction

摘要: 利用软件中的历史缺陷数据来建立分类器,进行软件缺陷的检测. 多核学习(Multiple kernel learning):把历史缺陷数据映射到高维特征空间,使得数据能够更好地表达: 集成学习(ensemble learning):使用一系列的分类器来减少由主类带来的分类误差,使具有更好的检测结果. 本文采用集成学习的方法构建一个多核分类器,集多核学习和集成学习的优点,提出方法: propose a multiple kernel ensemble learning (MKEL) appr

【软件分析与挖掘】An Empirical Study of Bugs in Build Process

摘要 对软件构建过程中所产生的错误(build process bugs)进行实证研究. 5个开源项目:CXF, Camel, Felix,Struts, and Tuscany. 把build process bugs 和 other bugs在3个维度比较:bug severity, bug ?x time, the number of ?les modi?ed to ?x a bug. 结论表明, Ⅰ.the fraction of build process bugs which are

【软件分析与挖掘】Vision of Software Clone Management: Past, Present, and Future (Keynote Paper)

abstract: 代码克隆的综述 S1    INTRODUCTION AND MOTIVATION 代码克隆的利弊: 利:可以有效地去耦合,避免其他一些可能的错误: 弊:当被复制的那段code中带有bug的话,他的复制版本中都会含有bug. 但是代码克隆操作又是不可避免的,因此,代码克隆应该得到有效的检测和管理. S2    A SYSTEMATIC REVIEW OF CLONE LITERATURE Robert Tiras搜集了一个从1994~2013的论文库,主要分为以下几类: 1.

【软件分析与挖掘】A Comparative Study of Supervised Learning Algorithms for Re-opened Bug Prediction

摘要: 本文主要是评估多种监督机器学习算法的有效性,这些算法用于判断一个错误报告是否是reopened的,算法如下: 7种监督学习算法:kNN,SVM, SimpleLogistic,Bayesian Network, Decision Table, CARTand LWL: 3种集成学习算法: AdaBoost,Bagging and Random Forest. 实验结果表明: 评判的指标:accuracy scores和 F-Measure scores Bagging  and  Dec

必应词典手机版(IOS版)与有道词典(IOS版)之软件分析【功能篇】

1.序言: 随着手机功能的不断更新和推广,手机应用市场的竞争变得愈发激烈.这次我们选择必应词典和有道词典的苹果客户端作对比,进一步分析这两款词典的客户端在功能和用户体验方面的利弊.这次测评的主要评测人是团队PM,另有其他同学给出建议. 2.软件分析与测评: 我们选择的是必应词典(version3.2.2 for ios)和有道词典(version 5.1.2 for ios) 2.1核心功能: 2.1.1词典功能: 众所周知词典的基本功能就是查词,在查词的基础上会给出相应的英文解释,例句以及用法

必应词典桌面版 --- 基于大学生用户群体的软件分析(与有道词典对比版 1功能篇)

1.概述 这篇博客会从大学生的角度来评测必应词典桌面版,以大学生的使用习惯来评判必应词典桌面版各项功能的优劣,并与同类软件进行横向分析,最终给出我们的评分.本次分析评测的主要评测员为博主本人,相关分析评测人员包括软件工程团队人员与他们的来自各个学校各个专业的同学们,人数共计23个,具有较好的普遍性. 2.软件分析与评测 本次评测我们会从功能.体验两大方面来对必应词典桌面版进行分析.必应词典版本:V3.5.0 for windows 桌面版     有道词典版本:PC版6.2 这篇博客是功能篇.

第十团队:软件分析与用户体验分析

第十团队 1.概述 这篇博客会从大学生的角度来评测Microsoft Edge浏览器,以大学生的使用习惯来评判Microsoft Edge浏览器各项功能的优劣,并与同类软件进行横向分析,最终给出我们的评分.本次分析评测的主要评测员为博主本人,相关分析评测人员包括软件工程团队人员与他们的来自各个学校各个专业的同学们,人数共计23个,具有较好的普遍性. 目标用户:大学生 人数:23人 2.软件分析与评测 本次评测我们会从功能.体验两大方面来对Microsoft Edge浏览器和QQ浏览器进行分析.

第9组 软件分析与用户体验分析

必应输入法桌面版--基于大学生用户群体的软件评测与分析(与搜狗输入法对比版 ) 1.概述 这篇博客会从大学生的角度来评测必应输入法桌面版,以大学生的使用习惯来评判必应输入法桌面版和搜狗输入法桌面版,最终给出我们的评分.调研人数:7人,调查为卷的形式 2.软件分析与评测 本次评测我们会从功能.体验两大方面来对必应输入法桌面版进行分析.必应输入法:1698.04 for windows 桌面版     有道词典版本:9.2.0.2785 windows桌面版 2.1 功能 1.地名输入: 必应输入法

Everspin串口串行mram演示软件分析

Everspin在磁存储器设计,制造和交付给相关应用方面的知识和经验在半导体行业中是独一无二的.在平面内和垂直磁隧道结(MTJ)STT-MRAM位单元的开发方面处于市场领先地位.包括40nm,28nm及更高工艺在内的先进技术节点上进行了全包交钥匙的300mm大批量平面内和垂直MTJ ST-MRAM生产.生产基于180nm,130nm和90nm工艺技术节点的MRAM产品.下面要介绍关于everspin公司MRAM演示软件分析 everspin公司MRAM演示软件分析 MRAM低级驱动程序通过操作系