[Paper] OpenDORS:一个公开引用的开放研究软件数据集
发布: (2025年12月1日 GMT+8 19:45)
7 min read
原文: arXiv
Source: arXiv - 2512.01570v1
概览
本文介绍了 OpenDORS,一个大规模、公开策划的数据集,将超过 134 k 研究软件项目与引用它们的学术文章关联起来。通过在规模上聚合仓库元数据(许可证、语言、版本信息),作者为社区提供了一个用于定量研究软件工程(RSE)实践的具体基础。
主要贡献
- 大规模、开放的数据集,包含 134 352 个唯一的研究软件项目以及在开放获取论文中引用的 134 154 个源代码仓库。
- 丰富的每仓库元数据(最新发布、许可证、主要编程语言,以及
README、CITATION.cff、CODE_OF_CONDUCT等描述性文件的存在情况)。 - 论文与软件的关联,实现了从研究主张到所使用的精确代码版本的可追溯性。
- 数据集的统计概览(例如语言分布、许可证流行度),为未来的 RSE 分析提供基准。
- 在宽松许可证下的开源发布,鼓励复用、扩展和社区贡献。
方法论
- 文献收集 – 作者从主要仓库(如 arXiv、PubMed Central)中挖掘开放获取文章,提取指向代码托管平台(GitHub、GitLab、Bitbucket 等)的 URL。
- 去重与标准化 – 将出现在多篇论文中的相同仓库 URL 合并,得到 唯一 软件项目集合。
- 元数据提取 – 对每个仓库,通过托管平台的 API 检查最新提交,收集:
- 当前版本标签或发布名称
- 符合 SPDX 的许可证标识符
- 主要编程语言(平台报告的)
- 常见元数据文件的存在情况(
README、CITATION.cff、LICENSE、CONTRIBUTING.md)。
- 数据集组装 – 每条记录存储引用论文的 DOI、仓库 URL 以及提取的元数据。完整集合以 CSV/JSON 文件形式发布,并附带一个小型 Python 库以便轻松查询。
该流水线全自动化,便于在新论文出现时刷新数据集。
结果与发现
- 覆盖范围 – 134 352 个不同的软件项目链接到 134 154 个仓库,表明大多数论文引用单一仓库,但也有少数引用多个。
- 许可证 – 超过 60 % 的仓库使用宽松许可证(MIT、BSD、Apache 2.0),约 15 % 使用 GPL 系列许可证;其余则缺乏明确的许可证声明。
- 语言格局 – Python 占主导(≈ 45 % 的项目),其后是 R、Java 和 C/C++,这反映了数据科学和统计计算在研究中的普遍性。
- 元数据采纳 – 仅约 30 % 的仓库包含
CITATION.cff文件,说明对软件的正式引用指导仍然稀缺。 - 版本管理 – 大约一半的项目拥有明确的发布标签,剩余项目依赖默认的
master/main分支,这可能阻碍可重复性。
这些描述性统计已经揭示了若干缺口(如缺失许可证、引用文件稀少),为 RSE 学者的后续研究提供了目标。
实际意义
- 可重复性审计 – 开发者可以将自己的项目与数据集进行交叉检查,看看是否符合社区规范(许可证、引用文件、版本化发布)。
- RSE 工具 – 这些元数据可用于构建仪表盘,在引用的仓库缺少许可证或适当的引用元数据时发出警示,促使快速整改。
- 政策与资助 – 资助机构可利用该数据集对开放科学要求(如强制许可证、软件引用)进行基准评估。
- 搜索与发现 – Zenodo、Figshare 等平台可集成 OpenDORS,展示被引用最多的研究软件,帮助开发者找到可靠的代码库进行二次开发。
- 机器学习分析 – 结构化数据支持大规模建模软件演化、语言采纳趋势或许可证选择对引用次数的影响等研究。
简而言之,OpenDORS 将零散的“软件提及”转化为可搜索的知识图谱,供开发者、仓库维护者和研究管理者使用。
局限性与未来工作
- 开放获取偏差 – 数据集仅包含自由获取的论文;付费墙后面的文章中引用的软件未被收录,可能导致学科覆盖的偏斜。
- 仓库范围 – 只捕获了主要托管服务上公开可达的 URL;自托管或机构仓库可能缺失。
- 静态快照 – 虽然流水线可重新运行,但已发布的版本是一个快照;若要实现真正实时的分析,需要持续集成。
- 元数据深度 – 当前提取止于高层字段,代码质量的更深层指标(测试覆盖率、CI 状态)留待后续扩展。
作者计划扩大来源覆盖范围,加入动态质量指标,并提供实时 API,使社区能够保持数据集的最新性和可操作性。
作者
- Stephan Druskat
- Lars Grunske
论文信息
- arXiv ID: 2512.01570v1
- 分类: cs.SE, cs.DL
- 出版时间: 2025 年 12 月 1 日
- PDF: Download PDF