衡量开发人员生产力的3个关键指标

如果没有明确的生产力目标,人工智能实施可能只会为组织的软件开发流程增加边际价值。

译自 3 Key Metrics to Measure Developer Productivity,作者 Emilio Salvador。

可以理解,企业对 AI 编码助手提高软件开发人员生产力的潜力感到兴奋。在 GitLab 最近的一项调查中,83% 的受访者表示,在软件开发流程中实施 AI 至关重要,以避免落后。

AI 可以自动化大部分软件 开发或至少让开发人员的生产力大幅提高的承诺提出了一个问题,即如何衡量开发人员的生产力。提示:这与代码量无关。

虽然大多数开发人员生产力衡量都侧重于任务指标,例如产生的代码行数或代码提交次数,但开发人员的生产力无法通过单一维度来衡量。必须考虑开发人员绩效的多个维度才能准确衡量开发人员的生产力。

任务:一种具有欺骗性的衡量标准

任务维度涵盖了衡量个人开发人员产出的最直接标准——在设定的时间范围内高效完成分配的任务。虽然看似简单,但将任务完成情况作为生产力的指标可能会产生误导——原因有二。

首先,软件开发人员通常以团队形式工作,个人同时处理软件开发的不同方面。因此,使用相同的面向任务的指标衡量各个开发人员会对团队生产力产生不准确的描述。

其次,完成更多任务不一定是最明智的解决问题的方法。例如,技术较差的程序员或 AI 编码助手可以生成大量的样板代码。例如,最近的一项供应商研究表明,开发人员可以使用 AI 比不使用 AI 快 90 分钟用 JavaScript 完成对 Web 服务器的编码。这是一个令人印象深刻的结果,但他们本可以在几分钟内重用现有的 Web 服务器抽象来创建相同的结果。

解决问题是任何软件开发人员的一项关键技能,因为他们经常面临需要创新解决方案的复杂挑战。开发人员必须能够准确识别问题,与团队成员合作生成潜在解决方案,并最终选择解决问题的最佳行动方案。

个人开发人员效率,它需要技术技能、批判性思维和创造力的结合,是一个比完成的任务数量更好的衡量标准。在一个著名的示例中,苹果 Lisa 计算机图形用户界面的首席设计师兼开发人员比尔·阿特金森将 Quickdraw 的区域计算例程优化为速度快六倍,代码行数减少 2000 行。他的贡献违背了苹果通过每周编写的代码量来跟踪各个工程师的生产力指标,转而采用更简单、更快速、更高效的解决方案。

将 AI 集成到软件开发过程中以提高开发人员的效率,例如通过测试自动化、代码重构和文档编制,可以释放开发人员的时间,让他们承担更复杂的工作,从而为组织和最终用户带来更大的价值。因此,现在比以往任何时候都更应该关注衡量业务成果,而不是衡量代码行数等产出。

时间:速度衡量标准

软件开发团队 知道迭代开发实践优于传统的瀑布模型。高节奏会导致紧密的反馈循环,其中在一个周期中进行的改进(例如用抽象替换样板代码)会导致在以后的周期中进一步改进。

时间指标是一种客观衡量标准。在 Google 衡量开发人员生产力的框架中,DevOps 研究与评估 (DORA) 量表中,四个指标中有三个是直接基于时间的:

  • 部署频率(小时/天/周/月)
  • 变更前置时间
  • 恢复服务时间

DORA 指标衡量 团队在特定时间范围内的绩效。它们是团队敏捷性、运营效率和速度的关键指标,并将反映组织在速度和软件稳定性之间取得的平衡程度。

DORA 团队经过六年多的研究表明,这些指标可用于确定确切的改进位置和方式,而短迭代周期始终会为开发组织带来更好的结果。

DORA 指标还可以揭示不良的开发人员体验可能如何损害开发人员速度。例如,一个开发团队可能正在编写出色的代码,但由于容易出错的测试和部署流程而显示出糟糕的 DORA 指标。

解决方案不是要求才华横溢但负担过重的开发团队更加努力地工作;而是要求开发团队领导者全面了解开发管道,并确定可以在何处实施流程改进。例如,将 AI 和自动化引入代码审查和测试流程可以改善 DORA 指标和软件交付性能。

团队:以人为本的衡量

团队维度在更广泛的组织环境中考虑业务成果。虽然软件开发团队必须高效地协同工作,但他们还必须与其他业务部门的团队合作。

通常,非技术因素(例如同伴支持、工作环境、心理安全和工作热情)在提高生产力方面发挥着重要作用。

另一个框架是 SPACE,它是满意度、绩效、活动、沟通和效率的首字母缩写。SPACE 的开发旨在捕捉生产力的一些更细微和以人为本的维度。SPACE 指标与 DORA 指标相结合,可以通过将生产力指标与业务成果相关联来填补生产力测量差距。

麦肯锡发现,将 DORA 和 SPACE 指标与“以机会为中心”的指标相结合可以全面了解开发人员生产力。反过来,这可能会产生积极的结果,正如麦肯锡报告所述:客户报告的产品缺陷减少 20% 至 30%,员工体验评分提高 20%,客户满意度评分提高 60%。

您要优化什么?

就像一个立方体的三个维度共同决定其体积一样,开发人员生产力的任务、时间和团队维度共同决定了总的业务影响。

虽然开发人员可能专注于其生产力最容易衡量的任务维度,例如每天编写的代码行数或每周接受的合并请求,但必须在更大的业务环境中考虑这些指标,例如当更多代码行可能对团队和时间维度产生负面影响时。

工程人才对公司成功的重要性以及对开发人员人才的激烈竞争强调了必须承认软件开发需要衡量才能改进。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注