如何衡量人工智能软件开发系统的影响

How to measure the impact of AI software development systems

通过人工智能软件开发系统赋能您的开发者,让他们能够自动化更多工作任务,这将改善组织的工程成果和开发者的生活质量。例如,机器学习增强的代码补全已被证明能够提高 GoogleGitHub 的开发者生产力。

下面,我们将概述如何开始了解和估算在您的团队中推广人工智能软件开发系统的投资回报。

步骤 0:衡量开发者生产力和体验

在衡量人工智能软件开发系统的影响之前,您需要具备组织内开发者生产力和体验的基线指标。

如果您还没有自己的方法,那么 SPACE 框架是了解开发者生产力的一个很好的起点。该框架的五个维度是:

  • 意度和幸福感(Satisfaction and well-being)
  • 效(Performance)
  • 动性(Activity)
  • 作和沟通(Communication and collaboration)
  • 率和心流(Efficiency and flow)

建议收集至少三个维度上的多个指标。其中一个指标应包含感知测量,例如调查数据,以便纳入人们的实际体验。

步骤 1:了解人工智能开发系统的使用情况

推广人工智能开发系统后的第一步是衡量其采用情况。您的开发数据将揭示许多关于您组织使用情况的信息:

  • 不同模型的使用率(例如 DeepSeek Coder 33B vs. Code Llama 70B)
  • 不同功能的使用率(例如 Tab 键自动补全 vs. “聊天”体验)
  • 建议的接受率(例如 ghost text, /edit, “apply this” 按钮等)

如果没人使用该系统,那么推广它将不会产生任何影响。在进入以下步骤之前,您需要确保该系统在您组织的开发者中获得足够的采用。

步骤 2:收集开发者关于心流体验和代码质量的看法

一旦开发者开始使用人工智能开发系统,您就应该开始与他们交流并询问他们的体验。随着时间的推移,这甚至可以转化为与开发者的正式用户访谈,以收集定性证据。然而,最终您可能希望在组织内进行开发者调查,以获得更具代表性、更清晰的画面。

在 GitHub Copilot 技术预览期间,GitHub 的研究人员进行了一项大规模调查,试图量化其对开发者生产力和幸福感的影响,这对于您设计自己的调查很有帮助。

您可能还希望在调查中包含关于您的人工智能开发系统对组织内代码质量的影响的问题。

举个例子,哈佛大学和普渡大学的研究人员就大型语言模型支持的代码生成工具的可用性进行了一项研究。

步骤 3:监测对工程成果的影响

业务成果是您创建、部署和维护的软件的性能和可靠性的函数。在组织中引入人工智能开发系统不仅应该影响您跟踪的开发者生产力和体验指标,还应该影响工程成果。

如果您还没有自己衡量工程成果的方法,那么DORA 指标是一个很好的起点:

  • 部署频率:成功发布到生产环境的频率
  • 变更前置时间:从提交到进入生产环境所需的时间
  • 变更失败率:导致生产环境失败的部署百分比
  • 服务恢复时间:从生产环境失败中恢复所需的时间

要了解更多关于 DORA 指标的信息,这里有一篇有用的入门文章,这里是一个可能有助于考虑引入人工智能开发系统的下游影响的资源。

实际案例

人工智能软件开发系统尚处于早期阶段。尽管如此,一些平台开发工程师已经开始分享他们衡量影响的经验。以下是两个值得观看的、来自 2023 年 9 月的演讲: