返回 编程语言
Awesome Empirical Software Engineering
编程语言
Awesome msr
一个精选的数据集和工具存储库,可用于对软件系统进行基于证据的数据驱动研究. 这种研究方法通常被称为 experimental, or empirical software engineering. 许多数据集也可用于研究 search-based software engineering 方法. 该存储库以 Mining Software Repositories (MSR) 会议系列. 有关此类工作的示例,请参阅 MSR 会议 Hall of Fame.
Awesome msr
Awesome Empirical Software Engineering
¶
一个精选的数据集和工具存储库,可用于对软件系统进行基于证据的数据驱动研究. 这种研究方法通常被称为 experimental, or empirical software engineering. 许多数据集也可用于研究 search-based software engineering 方法. 该存储库以 Mining Software Repositories (MSR) 会议系列. 有关此类工作的示例,请参阅 MSR 会议 Hall of Fame.
- 此列表需要您的输入才能不断改进. 阅读 contribution guide 有关如何操作的说明 你可以贡献. 或者,你可以给我发一个 email 如果您发现该过程过于繁琐或令人困惑.
- 有关更多精彩列表,请参阅 awesome.
Repositories¶
- SIR - Software-artifact infrastructure repository; Java, C, C++, and C# software together with test suites and fault data.
- PROMISE - 大约 20 个与软件工程研究相关的数据集.
- FLOSSmole - 协作收集和分析免费/自由/开源项目数据.
- Zenodo - CERN 开放访问存储库中的软件数据集合.
- Software Engineering Artifacts Can Really Assist Future Tasks
- Empirical Software Engineering
- Mining Software Repositories
Data Sets¶
- AndroidTimeMachine - 基于图形的 8,431 个真实世界 Android 应用程序提交历史数据集.
- AndroZoo - Android 应用程序的集合.
- Bug Prediction Dataset - 从 Eclipse JDT Core、PDE UI、Equinox Framework、Lucene、Mylyn 及其历史中收集模型和指标.
- Code Reviews - OpenStack、LibreOffice、AOSP、Qt、Eclipse 的代码审查.
- CoREBench - 从四个开源软件项目的存储库和错误报告中系统地提取了 70 个实际复杂的回归错误的集合:Make、Grep、Findutils 和 Coreutils.
- Cryptocurrency GitHub Activity and Market Cap Dataset - 随着时间的推移,GitHub 上 200 多个加密货币项目的提交、星级、价格和市值等活动. 原始的历史数据也是 available.
- Defects4J - 收集了 395 个可重现的错误,目的是推进软件测试研究.
- Eclipse AERI stacktraces - Eclipse IDE 用户遇到的异常堆栈跟踪集合,由 AERI 报告系统检索.
- Enron Spreadsheets and Emails - 论文“安然的电子表格和相关电子邮件:数据集和分析”中使用的所有电子表格和电子邮件.
- Findbugs-maven - Java 项目的 FindBugs 报告集 Maven repository.
- GHTorrent - 通过 GitHub REST API 提供的可扩展、可查询、离线的数据镜像.
- GitHub Bug Dataset - 15 个以静态源代码指标为特征的 Java 开源项目的错误数据集.
- GitHub on Google BigQuery - 可通过 Google 的 BigQuery 平台访问 GitHub 数据.
- Grammar Zoo - DSL 和 GPL 的语法集合,一些是从元模型和文档模式中提取的.
- KaVE - 开发者工具交互数据.
- Linux Kernel 4.21 Call Graphs - 使用生成的 Linux 内核 4.21 调用图 CScout.
- Maven metrics - 收集软件复杂性和规模指标 Maven Repository.
- Maven Dependency Graph - 2018 年 9 月 6 日拍摄的整个 Maven Central 的快照,存储在图形数据库中.
- mzdata - Mozilla 问题跟踪历史的多提取和多层次数据集.
- npm-miner - 数据集包含了 5 个开源软件质量工具 eslint、escomplex、nsp、jsinspect 和 sonarjs 对 2000 个流行(按星级和下载量)npm 包的分析结果.
- OCL Expressions on GitHub - 来自 245 个系统选择的 GitHub 存储库中的 504 个 EMF 元模型的 9188 个 OCL 表达式的数据集.
- RepoReapers Data Set - 包含来自 GHTorrent 的_工程软件项目_集合的数据集.
- Software Heritage Graph Dataset - 来自各种伪造(GitHub、Gitlab、Debian、PyPI、Google Code 等)的超过 8000 万个软件项目的开发历史和文件元数据图表,以去重和统一的表示形式(paper here).
- STAMINA -(状态机推理方法)数据用于对学习确定性有限状态机 (FSM) 的技术进行基准测试.
- Stack Exchange - Stack Exchange 网络上所有用户贡献内容的匿名转储.
- TravisTorrent - 提供免费且易于使用的 Traivs CI 构建分析.
- Ultimate Debian Database (UDD) - 在同一 SQL 数据库中有关 Debian 各个方面的数据(例如软件包、错误、维护者).
- Unified Bug Dataset - 基于静态源代码的数据集,包括 Bugcatchers Bug 数据集, Bug Prediction Dataset, 这 Eclipse Bug Dataset, 这 GitHub Bug Dataset, 一些数据集来自 PROMISE 存储库.
- Unix history - 具有 46 年 Unix 历史演变的 Git 存储库.
Tools¶
- astminer - 用于挖掘基于路径的代码表示和从 AST 派生的其他数据的库和工具.
- Boa - 简化挖掘软件存储库的特定领域语言和基础设施.
- buckwheat - 用于从源代码中提取标识符的多语言分词器.
- ckjm - Chidamber 和 Kemerer Java 指标.
- Coming - 用于分析代码更改和从 Git 存储库中挖掘更改模式实例的 Java 框架.
- CryptOSS - 挖掘加密货币项目的 GitHub 活动和市值数据.
- DbDeo - 提取嵌入式 SQL 语句并检测数据库模式气味.
- Designite - Compute source code metrics and detect a variety of implementation, design, and architecture smells for C#.
- DesigniteJava - 计算源代码指标并检测 Java 的各种实现和设计味道.
- Diggit - Agile Ruby Tool to analyze Git repositories.
- GrimoireLab - 用于软件开发分析的免费/自由/开源工具.
- MetricMiner - 精益 Java DSL 从 Git 和 SVN 存储库中挖掘和提取数据(例如提交、开发人员、修改、差异).
- Maven-miner - 用于解析整个 Maven 依赖关系图的 Java 工具和基础设施,托管在 Maven Central 中,形式为 Neo4j 图形.
- Perceval - 从数十个后端获取存储库数据.
- Puppeteer - 检测 Puppet 代码中的配置异味.
- PyDriller - 用于分析 Git 存储库的 Python 框架.
- qmcalc - 从 C 源代码计算质量指标.
- reaper - 用于计算 GHTorrent 存储库分数的 Python 工具. 该分数量化了存储库中包含的项目_工程化_的程度.
- RefactoringMiner - 用于检测 Java 代码更改中的重构的库/API.
- VulData7 - Java 框架支持自动收集提交修复 NVD 中报告的漏洞(将 NVD 与 Git 链接).
Research Outlets¶
- 专门致力于经验软件工程研究的网点
- Empirical Software Engineering journal
- MSR: Mining Software Repositories conference
- PROMISE: Predictive Models and Data Analytics in Software Engineering conference
- 发布实证软件工程研究的网点
- ACM Transactions on Software Engineering and Methodology (TOSEM)
- ESEC/FSE: ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering
- ICSE: International Conference on Software Engineering
- IEEE Software magazine
- IEEE Transactions on Software Engineering
- Journal of Systems and Software
- SANER: IEEE International Conference on Software Analysis, Evolution and Reengineering
License¶
在法律允许的范围内, Diomidis Spinellis 已放弃该作品的所有版权和相关或邻接权.
