中文

开发者为何在问题跟踪器中与 ChatGPT 交互?——关于 ChatGPT 生成代码的使用与依赖性的调查研究

软件工程 2024-12-12 v2

摘要

大型语言模型(LLM)如 ChatGPT 显示出在编码和调试任务中帮助开发者的潜力。然而,其在协作问题解决中的作用尚未得到充分探讨。本研究分析了跨 1,012 个 GitHub issue 的 1,152 场开发者-ChatGPT 对话,旨在考察 ChatGPT 的多样化使用方式及其生成代码的依赖程度。我们的贡献主要包括四方面:第一,我们手动分析了 289 场对话,了解 ChatGPT 在 GitHub Issues 中的使用方式。我们的分析显示,ChatGPT 主要被用于构思,而其用于验证(如代码文档准确性)的使用极少。第二,我们应用 BERTopic 模型识别整个数据集中的关键关注领域。我们发现后端问题(如 API 管理)占据对话主导地位,而测试工作 surprisingly 较少被涵盖。第三,我们利用 CPD 克隆检测工具检查 ChatGPT 生成的代码是否被用于解决问题。我们的发现表明,仅有 5.83\% 的问题是以原样使用 ChatGPT 生成的代码来解决的。第四,我们使用基于 RoBERTa 的情感分析模型估算情感,以确定开发者对不同用途和关注领域的满意度。我们发现,就重构和解决数据分析(如对表格数据进行分类)问题而言,开发者对使用 ChatGPT 持积极情感。相反,我们观察到在调试问题和解决自动化任务(如 GUI 交互)时使用 ChatGPT 会引发负面情感。我们的发现揭示了未满足的需求和开发者日益增长的不满情绪。研究人员和 ChatGPT 开发者应致力于开发针对性解决方案,以帮助解决多样化的问题,提高软件开发中的用户满意度和问题解决效率。

关键词

引用

@article{arxiv.2412.06757,
  title  = {Why Do Developers Engage with ChatGPT in Issue-Tracker? Investigating Usage and Reliance on ChatGPT-Generated Code},
  author = {Joy Krishan Das and Saikat Mondal and Chanchal K. Roy},
  journal= {arXiv preprint arXiv:2412.06757},
  year   = {2024}
}

备注

Accepted in SANER 2025