探索将微任务众包作为缺陷定位的一种手段
软件工程
2016-12-12 v1
摘要
微任务众包是指将待执行的宏观任务分解为大量、小型且快速的微任务,分发给未知的大量工作者集合的做法。微任务众包在其他学科已显示出潜力,但在软件工程中迄今仅探索了少数方法,其在我们领域的潜力仍不明确。在本文中,我们探索微任务众包如何能够作为缺陷定位的一种手段。我们特别采取了第一步,评估一群工作者能否正确定位取自不同开源项目的几行代码(代码片段)中的已知缺陷。通过Mechanical Turk,我们收集了数百名工作者对应用于代码片段的预定模板问题集的回答,每个问题有二十个回答的重复因子。我们的研究结果表明,人群能够正确区分覆盖含有缺陷的代码行的问题与那些不覆盖的问题。我们还展示了可应用各种过滤器来识别最有效的子人群。我们的研究结果也呈现出在选定用于检查的代码行比例以及收集回答的成本方面的严重局限性。我们描述了实验设计,讨论了结果,并提供了不同过滤器及其在速度、成本和有效性方面影响的广泛分析。我们以讨论局限性以及未来可能涉及更复杂缺陷的大规模更成熟缺陷定位实验作结。
引用
@article{arxiv.1612.03015,
title = {Exploring Microtask Crowdsourcing as a Means of Fault Localization},
author = {Christian Medeiros Adriano and Andre van der Hoek},
journal= {arXiv preprint arXiv:1612.03015},
year = {2016}
}
备注
Large scale experiment, 28 pages, 18 figures, 32 tables, 129 references