工具是否重要?探究软件存储库挖掘中威胀有效性的原因
软件工程
2025-01-28 v1
摘要
软件存储库是软件工程研究(如项目演化和开发人员协作)中信息来源的必需品。因此,适当的挖掘工具和分析管道是许多研究活动的必不可少的前提。理想情况下,有效结果不应依赖于数据收集和处理的技术细节。然而,广泛承认到挖掘管道复杂,且存在大量基于工具作者兴趣和假设作出的实现决策。这引出了一个问题:工具(以及到什么程度)在其结果方面是否一致,且是否可互换。在本研究中,我们使用两个工具从十个大型软件项目中提取并分析数据,通过定量和定性比较结果和派生数据,以更好地理解这一关注点。我们从技术角度分析差异,并调整代码和参数以最小化复制差异。我们的结果表明,尽管存在相似趋势,即使是诸如提交次数和开发人员数量等简单指标,也可能相差最高可达500%。我们发现,这种巨大差异通常是由微小技术细节引起的。我们展示了如何通过工具级别和数据后处理更改来克服这些问题,但发现这可能需要相当大的工作量。我们总结了在经验教训中识别的原因,以帮助研究人员和实践者避免常见陷阱,并反思实施决策及其对确保获取的数据满足明确和隐式期望的影响。我们的发现让我们假设,类似的不确定性可能存在于其他分析工具中,这可能限制了以工具为中心的研究所得结论的有效性。
引用
@article{arxiv.2501.15114,
title = {Does the Tool Matter? Exploring Some Causes of Threats to Validity in Mining Software Repositories},
author = {Nicole Hoess and Carlos Paradis and Rick Kazman and Wolfgang Mauerer},
journal= {arXiv preprint arXiv:2501.15114},
year = {2025}
}
备注
SANER 2025