Skip to main content
QUICK REVIEW

[论文解读] Traceability in the Wild: Automatically Augmenting Incomplete Trace Links

Michael Rath, Jacob Rendall|arXiv (Cornell University)|Apr 6, 2018
Software Engineering Research被引用 23
一句话总结

本文提出一种机器学习方法,通过分析流程、文本和利益相关者相关特征,自动恢复软件项目中提交记录与问题之间的缺失追踪链接。利用基于提交信息、问题描述和元数据提取的18个特征训练的随机森林分类器,该方法在六个人开源项目中,对未链接提交记录推荐问题标签的召回率达到96%,在补充现有不完整追踪链接时精确度超过89%。

ABSTRACT

Software and systems traceability is widely accepted as an essential element for supporting many software development tasks. Today's version control systems provide inbuilt features that allow developers to tag each commit with one or more issue ID, thereby providing the building blocks from which project-wide traceability can be established between feature requests, bug fixes, commits, source code, and specific developers. However, our analysis of six open source projects showed that on average only 60% of the commits were linked to specific issues. Without these fundamental links the entire set of project-wide links will be incomplete, and therefore not trustworthy. In this paper we address the fundamental problem of missing links between commits and issues. Our approach leverages a combination of process and text-related features characterizing issues and code changes to train a classifier to identify missing issue tags in commit messages, thereby generating the missing links. We conducted a series of experiments to evaluate our approach against six open source projects and showed that it was able to effectively recommend links for tagging issues at an average of 96% recall and 33% precision. In a related task for augmenting a set of existing trace links, the classifier returned precision at levels greater than 89% in all projects and recall of 50%

研究动机与目标

  • 为解决软件开发中关键的可追溯性不完整问题,即实践中仅有60%的提交记录与问题相关联。
  • 开发一种实用的自动化解决方案,在提交时推荐缺失的问题标签,使开发人员能够接受或拒绝建议。
  • 通过恢复提交记录与问题之间的缺失链接,提升项目级可追溯性,从而改善变更影响分析、缺陷预防以及开发人员推荐系统支持。
  • 通过设计一种可一键部署的分类器,确保工业适用性,使其可无缝集成到现有开发工作流中。

提出的方法

  • 该方法从提交信息、问题描述和元数据中提取18项特征,包括基于向量空间模型(VSM)的文本相似度、时间接近度、利益相关者参与度,以及‘孤点’(Loners)和‘幽灵’(Phantoms)等结构启发式规则。
  • 使用基于向量空间模型(VSM)并融合自然语言概念的方法计算提交信息与问题描述之间的文本相似度,避免使用较慢的潜在语义索引(LSI)等技术。
  • 该方法整合了流程相关特征,如提交信息中是否包含'fixes'或'closes'等关键词,以及问题解决时间与提交时间戳之间的时间对齐情况。
  • 使用这些特征训练随机森林分类器,以预测某次提交是否应与特定问题关联,即使不存在显式标签。
  • 在两种模式下评估分类器:为新提交推荐链接,以及补充现有不完整的链接集合。
  • 系统设计为可无缝集成到现有开发工作流中,仅需单次操作即可触发推荐。

实验结果

研究问题

  • RQ1RQ1:分类器是否能准确在提交过程中重建缺失的问题标签,即为未链接的提交推荐相关问题?
  • RQ2RQ2:分类器是否能以完全自动化的方式精确补充现有不完整的提交-问题链接集合?
  • RQ3RQ3:分类器是否能为目前无任何链接的提交推荐额外的问题标签?

主要发现

  • 在为未链接提交推荐最多三个问题标签时,分类器平均召回率达到96%,表明对缺失链接具有极强的覆盖能力。
  • 在补充现有不完整追踪链接的任务中,分类器在所有六个研究项目中精确度均超过89%,表明其在链接恢复方面具有高度可靠性。
  • 在识别来自先前未链接提交的链接任务中,分类器平均召回率为91.6%,精确率为17.3%,尽管面临零先验链接的挑战,仍表现出良好效果。
  • 随机森林分类器在推荐和补充任务中均优于其他模型,确立其为该问题的最优选择。
  • 引入如‘孤点’(Loners)和‘幽灵’(Phantoms)等结构启发式规则显著提升了链接预测性能,验证了其在识别隐式可追溯性中的相关性。
  • 该方法在多种开源项目中表现出稳健性,表明其可推广至使用Git与Jira/Bugzilla的其他开发环境。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。