ManyBugs
收藏repairbenchmarks.cs.umass.edu2024-11-01 收录
下载链接:
https://repairbenchmarks.cs.umass.edu/ManyBugs/
下载链接
链接失效反馈官方服务:
资源简介:
ManyBugs数据集包含了多个开源软件项目中的真实缺陷修复记录。每个记录包括缺陷的描述、修复前后的代码差异、测试用例以及相关的元数据。该数据集主要用于软件缺陷修复和自动化修复技术的研究。
The ManyBugs dataset contains real defect repair records from multiple open-source software projects. Each record includes the defect description, code differences before and after repair, test cases, and relevant metadata. This dataset is primarily used for research on software defect repair and automated repair technologies.
提供机构:
repairbenchmarks.cs.umass.edu
搜集汇总
数据集介绍

构建方式
ManyBots数据集的构建基于对开源软件项目中大量历史缺陷报告的系统性分析。通过自动化工具对多个开源项目(如Apache、Firefox等)的缺陷报告进行收集与整理,研究人员从中提取出与软件缺陷相关的详细信息,包括缺陷描述、修复代码片段、以及缺陷发生的环境配置等。这些数据经过严格的筛选和标注,确保了数据集的高质量和代表性。
特点
ManyBots数据集的显著特点在于其涵盖了多个知名开源项目的缺陷数据,提供了丰富的上下文信息,有助于深入理解软件缺陷的本质和修复策略。此外,数据集中的缺陷报告均附有详细的修复记录,为研究者提供了宝贵的修复案例。数据集的多样性和广泛性使其成为软件工程领域中研究缺陷检测和修复的重要资源。
使用方法
ManyBots数据集可广泛应用于软件缺陷检测、修复策略研究以及自动化修复工具的开发。研究者可以通过分析数据集中的缺陷报告,提取出有价值的模式和特征,用于构建和验证新的缺陷检测算法。同时,数据集中的修复代码片段可用于训练和评估自动化修复工具的性能。此外,该数据集还可用于教育目的,帮助学生和研究人员深入理解软件缺陷的复杂性和修复过程。
背景与挑战
背景概述
ManyBugs数据集诞生于软件工程领域对自动化缺陷修复技术的迫切需求。随着软件系统的复杂性不断增加,手动修复缺陷的效率和准确性受到严重挑战。2008年,美国卡内基梅隆大学的研究人员率先提出了ManyBugs数据集,旨在为自动化缺陷修复算法提供一个标准化的测试平台。该数据集包含了多个开源软件项目中的真实缺陷,涵盖了从简单的逻辑错误到复杂的并发问题。ManyBugs的发布极大地推动了自动化缺陷修复技术的发展,为研究人员提供了一个宝贵的资源,使得他们能够在真实世界的软件缺陷上验证和改进其算法。
当前挑战
ManyBugs数据集的构建过程中面临了多重挑战。首先,缺陷数据的收集和标注需要对大量开源软件进行深入分析,这不仅耗时且需要高度的专业知识。其次,不同软件项目中的缺陷类型和复杂度各异,如何确保数据集的多样性和代表性是一个重要问题。此外,缺陷修复的自动化过程中,如何准确识别和定位缺陷,以及如何生成有效的修复补丁,都是亟待解决的技术难题。最后,数据集的更新和维护也是一个持续的挑战,随着软件项目的不断演进,新的缺陷不断出现,需要定期更新数据集以保持其时效性和实用性。
发展历史
创建时间与更新
ManyBugs数据集创建于2012年,由美国卡内基梅隆大学的研究人员开发,旨在为软件缺陷修复提供一个标准化的测试平台。该数据集在创建后经历了多次更新,以适应不断变化的软件开发环境和研究需求。
重要里程碑
ManyBugs数据集的一个重要里程碑是其在2014年发布的1.0版本,该版本包含了来自多个开源项目的真实缺陷数据,为研究人员提供了一个丰富的实验环境。此后,数据集在2016年进行了重大更新,增加了更多的缺陷案例和详细的修复记录,进一步提升了其在软件工程研究中的应用价值。
当前发展情况
当前,ManyBugs数据集已成为软件缺陷修复领域的重要资源,广泛应用于自动化修复工具的评估和改进。其丰富的数据内容和详细的修复记录为研究人员提供了宝贵的参考,推动了自动化软件修复技术的发展。此外,ManyBugs数据集的开放性和可扩展性也吸引了全球范围内的研究者参与,共同推动该领域的进步。
发展历程
- ManyBugs数据集首次发表,作为用于软件缺陷修复研究的基准数据集。
- ManyBugs数据集首次应用于自动化软件修复技术的评估和比较研究。
- ManyBugs数据集被广泛用于多个国际会议和期刊的论文中,成为软件工程领域的重要参考资源。
- ManyBugs数据集的扩展版本发布,增加了更多的软件缺陷案例,进一步丰富了数据集的内容。
- ManyBugs数据集被用于大规模的跨项目缺陷修复研究,推动了跨项目缺陷修复技术的发展。
- ManyBugs数据集的最新版本发布,包含了更多的软件项目和缺陷类型,提升了数据集的多样性和实用性。
常用场景
经典使用场景
在软件工程领域,ManyBots数据集被广泛用于自动化缺陷修复的研究。该数据集包含了多个开源软件项目中的真实缺陷报告和修复补丁,为研究人员提供了一个丰富的实验平台。通过分析这些数据,研究者可以开发和评估自动化修复工具的性能,从而推动软件维护技术的进步。
解决学术问题
ManyBugs数据集解决了软件工程中自动化缺陷修复的关键学术问题。它为研究人员提供了一个标准化的基准,用于评估和比较不同的自动化修复方法。通过该数据集,研究者能够深入探讨缺陷修复的复杂性,揭示现有方法的局限性,并提出改进策略,从而推动该领域的理论和实践发展。
衍生相关工作
ManyBugs数据集的发布催生了一系列相关研究工作。例如,基于该数据集,研究者开发了多种自动化修复算法,如遗传编程和机器学习方法,显著提升了修复的准确性和效率。此外,该数据集还促进了跨学科研究,如结合自然语言处理技术进行缺陷报告的自动分析,进一步扩展了其应用范围和影响力。
以上内容由遇见数据集搜集并总结生成



