[Context] AI assistants, like GitHub Copilot and Cursor, are transforming software engineering. While several studies highlight productivity improvements, their impact on maintainability requires further investigation. [Objective] This study investigates whether co-development with AI assistants affects software maintainability, specifically how easily other developers can evolve the resulting source code. [Method] We conducted a two-phase controlled experiment involving 151 participants, 95% of whom were professional developers. In Phase 1, participants added a new feature to a Java web application, with or without AI assistance. In Phase 2, a randomized controlled trial, new participants evolved these solutions without AI assistance. [Results] Phase 2 revealed no significant differences in subsequent evolution with respect to completion time or code quality. Bayesian analysis suggests that any speed or quality improvements from AI use were at most small and highly uncertain. Observational results from Phase 1 corroborate prior research: using an AI assistant yielded a 30.7% median reduction in completion time, and habitual AI users showed an estimated 55.9% speedup. [Conclusions] Overall, we did not detect systematic maintainability advantages or disadvantages when other developers evolved code co-developed with AI assistants. Within the scope of our tasks and measures, we observed no consistent warning signs of degraded code-level maintainability. Future work should examine risks such as code bloat from excessive code generation and cognitive debt as developers offload more mental effort to assistants.


翻译:[背景] GitHub Copilot和Cursor等AI助手正在重塑软件工程实践。尽管多项研究强调了其带来的生产力提升,但这些工具对软件可维护性的影响仍需深入探究。[目标] 本研究旨在探究与AI助手协同开发是否会影响软件可维护性,特别是其他开发者对生成源代码进行演化的难易程度。[方法] 我们设计了一项包含两个阶段的受控实验,共招募151名参与者,其中95%为专业开发者。第一阶段中,参与者在有无AI辅助的条件下为Java Web应用程序添加新功能。第二阶段采用随机对照试验,新参与者在无AI辅助的情况下对这些解决方案进行演化开发。[结果] 第二阶段数据显示,在后续演化过程中,完成时间与代码质量均未呈现显著差异。贝叶斯分析表明,使用AI可能带来的速度或质量提升至多为微小效应且具有高度不确定性。第一阶段的观察结果验证了先前研究:使用AI助手中位完成时间降低30.7%,习惯性AI用户预估提速55.9%。[结论] 总体而言,当其他开发者演化与AI助手协同开发的代码时,我们未检测到系统性的可维护性优势或缺陷。在本研究任务和度量范围内,未观察到代码级可维护性下降的一致预警信号。未来研究应关注过度代码生成导致的代码膨胀,以及开发者将更多认知负荷转移至助手所产生的认知债务等潜在风险。

0
下载
关闭预览

相关内容

人工智能杂志AI(Artificial Intelligence)是目前公认的发表该领域最新研究成果的主要国际论坛。该期刊欢迎有关AI广泛方面的论文,这些论文构成了整个领域的进步,也欢迎介绍人工智能应用的论文,但重点应该放在新的和新颖的人工智能方法如何提高应用领域的性能,而不是介绍传统人工智能方法的另一个应用。关于应用的论文应该描述一个原则性的解决方案,强调其新颖性,并对正在开发的人工智能技术进行深入的评估。 官网地址:http://dblp.uni-trier.de/db/journals/ai/
图机器学习 2.2-2.4 Properties of Networks, Random Graph
图与推荐
10+阅读 · 2020年3月28日
预知未来——Gluon 时间序列工具包(GluonTS)
ApacheMXNet
24+阅读 · 2019年6月25日
Mask R-CNN 论文笔记
统计学习与视觉计算组
11+阅读 · 2018年3月22日
国家自然科学基金
46+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2014年12月31日
VIP会员
相关资讯
图机器学习 2.2-2.4 Properties of Networks, Random Graph
图与推荐
10+阅读 · 2020年3月28日
预知未来——Gluon 时间序列工具包(GluonTS)
ApacheMXNet
24+阅读 · 2019年6月25日
Mask R-CNN 论文笔记
统计学习与视觉计算组
11+阅读 · 2018年3月22日
相关基金
国家自然科学基金
46+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员