写点什么

对超高生产力的度量是浪费时间吗?

  • 2009-06-03
  • 本文字数:1424 字

    阅读完需:约 5 分钟

在一个关于超高生产力与电击疗法的演讲中, Jeff Sutherland 提到:超高生产力(Hyper-Productivity)至少应该达到丰田的绩效水准,也就是四倍于行业平均水平。他认为:正确进行敏捷开发的团队,应该可以在 3 个为期两周的迭代中体现出 300% 的进步。最近在 Scrum Development group 的讨论中,成员们争论有无可能准确度量多个 sprint 体现出来的生产力,以及这样做是否有益,还谈到是否有可能看出团队已经到达超高生产力状态。

Adam Sroka 认为要想度量多个 sprint 体现出来的生产力或工作效率很困难,甚至不可能。很多时候,团队的生产力建立在故事点数基础之上,而这个数字在各个 sprint 之间是不断变化的。他觉得:

故事点数未必可以比较,即使它们看起来是随时间推移不断稳定下来的(比如在迭代 1 中的 5 个故事点数与迭代 5 中的 5 个故事点数就没有可比性。不过,迭代 5 中的 5 个故事点数与迭代 6 中的 5 个故事点数就比较接近)。因此,一个敏捷项目在过程中体现出来的生产力提升类似于没有实际证据的轶事 。我们见过这样的状况,也知道它确实存在,但我们找不到确定的方式来度量它。

Tobias Mayer 同意 Adam 的意见,他也指出:

对“超高生产力”的度量纯属浪费时间——而且就跟卖“大力丸”差不多。对故事的估算不是一成不变的,团队交付软件的能力会随着时间推移提升,也会改变他们估算故事的结果。正如 Adam 指出的,对于同等复杂的故事,我们估算的准确度会越来越高。
我认为这样的“量化”会给 Scrum 造成伤害,正如最初的帖子指出的,如果你将底线设得足够低,所有的事情看起来像是达到了“超高生产力”。要是团队在第一个 sprint 中什么都没有完成呢?在此后的第二个 sprint 中完成的 1 个故事点数就像是增长了无数倍啊。真是荒谬透顶!

Joseph Little 指出:尽管很多关于“超高生产力”的谈话都是白费口水,“超高生产力”本身还是有意义的。他建议:团队应该知道自己的速度,这样才能不断改进。他也同意:速度可能会随着迭代的推进而改变,所以在不同 sprint 中,大小相同的故事可能分配的点数不同。要解决这个问题,应该计算 3 个 sprint 下来的平均速度,而不是就拿一个 sprint 中的速度来说事儿。接下来应该要做的,就是让团队的开发速度翻番了,这就需要对开发流程进行大大小小的调整,移除遇到的障碍,多多益善。Joseph 认为:

让我说得更明白点儿:软件开发这件事儿现在做得真不怎么样,要想让团队的工作效率翻番没那么困难。

Roy Morien 补充道:要想精确度量个人或团队的生产力,难上加难。因此,团队应该把注意力放在交付有效的、可工作的软件之上,力图改善上个 sprint 中做事的方法,而不是去考虑如何度量生产力。

与他的观点相同, Adam Sroka 指出:团队不应该浪费时间度量生产力、分析团队是否到达“超高生产力”状态,而是应该将焦点放在:

  1. 我们是不是正在交付有价值的、可工作的软件?是不是持续不断地、每个迭代都是这样?
  2. 我们现在是不是把精力都放在可持续的工作方式之上?我们能一直按照这个步调交付软件么?我们还能改进么?
  3. 我们有没有把精力浪费在对于直接交付价值没有贡献的事情上?我们应该怎么消除这些浪费?

综上,通过这些讨论,大部分人都认为:在敏捷开发中,相对于比较不同 sprint 之间的生产力数字以查看是否达到“超高生产力”状况,还有更重要的事情要做。而且,由于没有收集不同 sprint 之间生产力数字的标准计算方法,去比较这些数字也就不怎么靠谱了。

查看英文原文: Is Measuring Hyper-Productivity a Waste of Time?

2009-06-03 04:261326
用户头像

发布了 479 篇内容, 共 170.7 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

Jetpack Compose初体验,flutter游戏开发

android 程序员 移动开发

Kvrocks 2.0.4 发布

Kvrocks

c++ redis Redis 协议 storage

Jetpack之DataBinding,2021Android最新大厂面试真题

android 程序员 移动开发

JetPack系列——Navigation(一),flutter安装androidsdk

android 程序员 移动开发

IT圈的“年龄歧视”,移动互联网app开发实例

android 程序员 移动开发

Jetpack MVVM七宗罪 之三 :在 onViewCreated 中请求数据

android 程序员 移动开发

Java虚拟机相关面试题,android系统开发面试

android 程序员 移动开发

Jetpack Compose漫谈,搞懂这些直接来阿里入职

android 程序员 移动开发

Jetpack_Data Binding入门指南,这些新技术你们都知道吗

android 程序员 移动开发

JVM如何实现线程同步,干货精讲

android 程序员 移动开发

Groovy脚本基础全攻略,重磅

android 程序员 移动开发

Gson 解析 Json 容错才是关键,举几个常用的实例!,android开发视频百度网盘

android 程序员 移动开发

🍃【Spring专题】「实战系列」重新回顾一下Spring框架的异步执行调用的原理和实战

码界西柚

spring 异步编程 异步调度 11月日更

HTTPS详解,谈谈我认为的高级Android开发到底应该是怎样的

android 程序员 移动开发

Jetpack系列(三) — LiveData,大厂Android面试总结+详细解答

android 程序员 移动开发

万字解读鸿蒙轻内核物理内存模块

华为云开发者联盟

鸿蒙 内存 虚拟内存 物料内存 内存页

Java泛型,安卓面试项目经验

android 程序员 移动开发

Jetpack一统江湖!一个月彻底修改你的App架构!,Android技术图谱

android 程序员 移动开发

Jetpack架构组件库-LiveData实战与应用-总有适合你的方案

android 程序员 移动开发

Jetpack一统江湖!一个月彻底修改你的App架构!(1),kotlin协程源码分析

android 程序员 移动开发

Jetpack之Paging,android面试自我介绍

android 程序员 移动开发

Gradle多维度使用,h5开发移动端

android 程序员 移动开发

HashMap 源码解析二、put 相关函数,android原生开发教程

android 程序员 移动开发

IT-架构师绝对不能错过的-34-技术知识图谱帮你轻松拿下大厂offer

android 程序员 移动开发

javascript中的原型与对象(一),12个View绘制流程高频面试题

android 程序员 移动开发

Java虚拟机相关面试题(1),整理出Android逆向系列学习进阶视频

android 程序员 移动开发

Handler源码分析之二 异步消息的处理,2021金三银四面试季

android 程序员 移动开发

IOC架构设计之Dagger2架构设计(三),进阶加薪全靠它

android 程序员 移动开发

Hook 技术初探,【2021Android最新学习路线

android 程序员 移动开发

IOC架构设计之控制反转和依赖注入(一),2021大厂Android面试经验

android 程序员 移动开发

Java面试题八:抽象类和接口的区别,移动端开发技术创新

android 程序员 移动开发

对超高生产力的度量是浪费时间吗?_研发效能_Vikas Hazrati_InfoQ精选文章