中文

Stack Overflow 帖子的演化:重建与分析

软件工程 2018-11-05 v1

摘要

Stack Overflow (SO) 是面向软件开发者最流行的问答网站,提供了关于广泛主题的大量代码片段与自由文本。如同其他软件制品,SO 上的问答随时间演化,例如当代码片段中的 bug 被修复、代码被更新以适配更新的库版本,或代码片段周围的文本被编辑以更清晰时。为能分析 SO 上内容如何演化,我们构建了 SOTorrent,一个基于官方 SO 数据转储的开放数据集。SOTorrent 在整篇帖子以及单个文本或代码块层级提供对 SO 内容版本历史的访问。它通过聚合来自文本块与评论的 URL,以及收集来自 GitHub 文件对 SO 帖子的引用,将 SO 帖子连接到其他平台。在本文中,我们描述了如何构建 SOTorrent,特别是我们如何评估 134 种不同的字符串相似度度量在其重建文本与代码块版本历史适用性上的表现。基于使用该数据集的不同分析,我们呈现:(1) 对 SO 帖子演化的洞察,例如帖子编辑通常较小、发生于帖子初始创建后不久,且代码很少在不变更周围文本的情况下被修改;(2) 一项调查帖子编辑与评论紧密关系的定性研究,(3) 对 SO 上代码克隆的首次分析连同对可能许可风险的调查。最后,自该数据集初始发布以来,我们改进了帖子块提取与前驱匹配策略。

关键词

引用

@article{arxiv.1811.00804,
  title  = {The Evolution of Stack Overflow Posts: Reconstruction and Analysis},
  author = {Sebastian Baltes and Lorik Dumani and Christoph Treude and Stephan Diehl},
  journal= {arXiv preprint arXiv:1811.00804},
  year   = {2018}
}

备注

43 pages, 17 figures (currently under review)