衡量AI对交付速度的影响

衡量AI对交付速度的影响

💡 原文英文,约1800词,阅读约需7分钟。
📝

内容提要

本文讨论如何衡量AI对软件开发速度的影响。作者认为交付速度不等于生产力,且缺乏客观标准衡量开发速度,因为功能与缺陷规模不一,估算常过于乐观。建议采用随机受试者内重复测量试验:先收集估算,再随机分配任务是否使用AI,将个人与自身对比,并统一流程以减少干扰。作者强调AI投入成本差异巨大,必须测量实际收益,否则可能高估其效果。

🔎

延伸解读

为什么不能简单比较团队速度

文章指出,软件开发速度没有客观标准,因为功能、缺陷、故事点等产出物大小不一,无法直接比较。估算也常过于乐观,导致按时交付率不能反映真实速度。因此,比较两个团队谁快谁慢没有意义,更合理的是让团队与自身对比,观察引入AI前后的变化。

随机受试者内重复测量试验的关键设计

为了减少个体差异和流程改进的干扰,文章建议采用随机受试者内重复测量试验。具体做法是:先让开发者记录任务估算,再随机分配该任务使用或不使用AI,确保估算在知道是否用AI之前收集。同时,将“不用AI”的流程也更新为与“用AI”相同的精简流程,以隔离AI本身的效应。

AI投入成本差异巨大,必须测量实际收益

文章强调,不同团队在AI上的花费可能相差一个数量级,从每月每人几百到几千美元不等。如果不测量实际交付速度的提升,就无法判断哪种AI使用方式回报更高。METR研究显示,工程师曾高估AI带来的速度提升近50%,因此仅凭感觉可能严重高估效果,导致错误投资。

速度提升不等于生产力提升

文章提醒,交付速度只是生产力的一个组成部分,生产力应定义为产生的价值除以花费的成本。即使编码速度提升2倍,如果开发者只有一半时间用于编码,整体速度提升也只有1.33倍。此外,速度提升可能以牺牲代码质量或可持续性为代价,这些 unintended consequences 将在后续部分讨论。

Q&A

为什么说交付速度不等于生产力?

交付速度只是生产力的一个组成部分。生产力是产生的价值除以花费的金钱,而交付速度只关注是否更快完成分配的工作,不关心工作是否有用或方向是否正确。

为什么没有客观标准来衡量软件开发速度?

因为团队的产出没有标准化。功能有大有小,缺陷有难有易,故事点和速率完全是任意的,它们更多取决于请求的内容而非团队的速度。

为什么不能直接用估算来判断团队速度?

软件估算以不准确著称。总是错过估算的团队不是慢,而是过于乐观。而且估算会因是否使用AI而改变,所以不能直接用来判断速度。

衡量AI对交付速度影响的核心方法是什么?

采用随机受试者内重复测量试验。先收集估算,再随机分配任务是否使用AI,将个人与自身对比,并统一流程以减少干扰。

在测量AI影响时,如何避免流程改进带来的干扰?

将“无AI”任务和“有AI”任务交错进行,而不是比较“AI前”和“AI后”的数据块。同时,更新“无AI”方法以包含相同的简化流程。

为什么必须测量AI的实际收益?

AI投入成本差异巨大,从每月每人数百到数千美元不等。如果不测量,可能高估AI的效果。例如,METR研究中工程师高估了AI的速度收益近50%。

🏷️

标签

➡️

继续阅读