Can We Identify Stack Overflow Questions Requiring Code Snippets? Investigating the Cause & Effect of Missing Code Snippets

2024年02月07日
  • 简介
    在 Stack Overflow(SO)问答网站上,用户经常请求解决与代码相关的问题(例如错误、意外行为)。不幸的是,他们在提交问题时经常错过必要的代码片段,这可能会阻止他们得到及时和恰当的答案。在本研究中,我们进行了一项实证研究,调查了缺少必要代码片段在SO问题中的原因和影响。在这里,我们的贡献有三个。首先,我们分析了必要代码片段的存在或缺失对问题类型(缺失代码、请求后包含代码和提交时包含代码片段)与相应答案元数据(例如是否有被接受的答案)之间相关性的影响。根据我们的分析,与错过代码的问题相比,包含必要代码片段的问题获得被接受的答案的机会要高三倍。我们还调查了混淆因素(例如用户声誉)是否影响问题获得答案,除了必要代码片段的存在或缺失。我们发现这些因素不会影响必要代码片段的存在或缺失与答案元数据之间的相关性。其次,我们调查了64名实践者,以了解用户为什么会错过必要的代码片段。约60%的实践者认为用户不知道他们的问题是否需要任何代码片段。第三,我们因此提取了四个基于文本的特征(例如关键字),并构建了六个机器学习模型来识别需要代码片段的问题。我们的模型可以以86.5%的精度、90.8%的召回率、85.3%的F1分数和85.2%的总体准确度预测目标问题。我们的工作有潜力在编程问题回答中节省大量时间,并通过减少未回答和未解决的问题来提高宝贵知识库的质量。
  • 作者讲解
  • 图表
  • 解决问题
    本论文旨在探究在Stack Overflow(SO)问答网站上,用户在提交问题时缺少必要的代码片段对问题回答的影响,并尝试提出解决方案。这是否是一个新问题?
  • 关键思路
    论文的关键思路是通过机器学习模型识别需要代码片段的问题,并探究缺少代码片段对问题回答的影响。相比当前领域的研究,这篇论文提出了一种新的解决方案。
  • 其它亮点
    论文通过实验分析发现,缺少必要代码片段的问题获得被接受的答案的概率只有包含必要代码片段的问题的三分之一。此外,论文还调查了用户为什么会缺少必要代码片段,并提出了四个基于文本的特征用于识别需要代码片段的问题,并构建了六个机器学习模型进行预测。模型的精度、召回率、F1值和总体准确率分别为86.5%,90.8%,85.3%和85.2%。这项工作有望节省编程问题回答的时间,并通过减少未回答和未解决的问题来提高宝贵知识库的质量。
  • 相关研究
    在这个领域中,最近的相关研究包括:1.《Stack Overflow上的问题和回答:一个大规模的学习和比较分析》;2.《Stack Overflow上的代码片段:一个大规模的实证研究》;3.《Stack Overflow上的自然语言处理:一个系统化的文献综述》。
许愿开讲
PDF
原文
点赞 收藏
向作者提问
NEW
分享到Link

提问交流

提交问题,平台邀请作者,轻松获得权威解答~

向作者提问