写点什么

开发速度正在杀死敏捷吗?

  • 2011-11-10
  • 本文字数:1034 字

    阅读完需:约 3 分钟

敏捷宣言的签署者之一,Jim Highsmith 在他最近的博客“开发速度正在杀死敏捷”中描绘了对开发速度“饥渴”的经理会用开发速度作为生产率的衡量指标。他写道:“……他们通常狂热的衡量开发速度——团队开发速度、不同团队间开发速度的比较、组织级的开发速度、甚至是每个开发人员的开发速度(呸!)”

Highsmith 指出开发速度正被越来越多的用来衡量生产率。原因显而易见。任何衡量生产率的方法,可以帮助你了解什么方法有效、什么方法无效,以便调整。而且,开发速度数据容易获得、便于计算并被视为是大量输出的计量结果。但 Highsmith 警告说,这种度量太过关注交付故事点的数量。“这个数量降低了交付的客户体验的质量”,并在他所谓的“交付引擎”上投入过多。

让问题更加复杂的是,敏捷运动专注于高度客户参与——总的来说这是好事——但我们走得太远了。很多“敏捷主义者”公开抱怨他们不能让组织专注于技术实践——但为什么我们鼓励产品经理对优先级做出决定,然后当他们用速度来衡量工作情况时,而大吃一惊呢?在传统方法中,我们太过缺少客户参与——从而赋予产品经理安排优先级的控制权。

Highsmith 不是第一个质疑敏捷实践中开发速度的用法的人。 Mark Levison 在他去年的博客文章“敏捷项目中开发速度的误用”中,他定义了开发速度是团队完成的工作量除以完成时间。他写道“工作量通常以故事点数(一个相对大小的数量)计算。”

Levison 谈论了用开发速度比较两个团队的生产力。但 Levison 指出:

敏捷 /Scrum 团队使用相对大小的估算(比如,这个用户故事 / 功能是大于还是小于我们的“基准”用户故事?),而不是像传统方法中的绝对大小估算。互相比较、标杆对照、或者任何比较开发速度的尝试时,都会遇到这个问题:我的故事点数 ≠ 你的故事点数,因为不同的项目采用了不同的基准用户故事。不同的项目的问题域不一样,项目成员也不一样。

Scott Ambler 也在几年前写过有关“在不同团队间比较开发速度的危险”这一主题的文章,他建议不要计算每个团队的加速度。Ambler 认为,这种做法的优势在于:容易计算、易于自动化并难于博弈。缺点是,这种度量是间接的,很大程度上依赖于Ambler 称之为的“捏造因数”。

可能是Highsmith 标题党了,他和Levison 都不是说开发速度是完全邪恶的。Highsmith 写道,“开发速度的正确用法是一个校准工具,是一种有助于做基于能力的计划的方法”,Levison 说,“开发速度和发布计划的真正价值在于让产品经理清楚在下个发布时能得到什么。”

查看英文原文: Is Velocity Killing Agile?

2011-11-10 07:182876
用户头像

发布了 32 篇内容, 共 98388 次阅读, 收获喜欢 1 次。

关注

评论

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

终端传感了解吗?18个知识点为你扫盲

华为云开发者联盟

IoT 信息化 传感器 传输协议 无线传输器

Pod安装神策SDK报错Remote branch v2.1.3 not found in upstream origin

凌宇之蓝

ios 小程序flutter, 跨平台 CocoaPods pod React Native

在Rust里面嵌入python代码

lipi

Python rust

闲聊胡扯

C语言与CPP编程

随笔杂谈

Elasticsearch初步认识

枫林

Java elasticsearch ES

Docker 安装和简单使用

枫林

Docker

Docker -快速安装Elasticsearch

枫林

甲方日常 7

句子

工作 随笔杂谈 日常

【高并发】要想学好并发编程,关键是要理解这三个核心问题

冰河

写作 多线程 高并发 同步 分工

关于MySQL参数,这些你要知道

Simon

MySQL 参数

再爆安全漏洞,这次轮到Jackson了,竟由阿里云上报

YourBatman

Jackson Fastjson 安全漏洞 CVE-2020-24616

话题讨论 | 你的桌面上会放哪些有趣的小摆件?

InfoQ写作社区官方

工作 话题讨论 办公室

mPaas 厂商push不通排查指南

阿里云金融线TAM SRE专家服务团队

android push

指针变量的传值和传址

C语言与CPP编程

c++ 指针 C语言

C语言与C++常见面试题

C语言与CPP编程

c++ 面试 C语言

浮点数比较的精度问题

C语言与CPP编程

c c++

AtmoicXXX与AtmoicXXXArray源码分析

Darren

源码 内存布局 CAS java 并发 AtmoicXXX

最通俗易懂的 Redis 架构模式详解

哈喽沃德先生

redis 架构模式 redis集群 redis哨兵 redis主从

《我要进大厂》之mysql夺命连环13问

艾小仙

Java MySQL 面试 Java 分布式 大厂

C/C++函数指针与指针函数

C语言与CPP编程

c++ C语言 函数指针

你真的了解 Base64 吗

hepingfly

Java base64 编码

微服务下数据一致性的几种实现方式

xcbeyond

微服务 BASE理论 数据一致性

Flink检查点存在的性能影响-16

小知识点

scala 大数据 flink

联盟:互联网时代的人才变革

非著名程序员

互联网 个人成长 人才 人才发展 突破圈层,个体崛起

深挖 Redis 6.0 源码—— SDS

yanglbme

redis 源码 源码分析

我们一起学程序-五子棋

叫练

Java 多线程 游戏 websocket

oeasy教您玩转linux010203显示logo

o

缓冲区溢出

C语言与CPP编程

c++ C语言 缓冲区 堆栈溢出

架构师训练营0期 第十二周作业

WW

面试官问:Spring Boot中Tomcat是怎么启动的

Java小咖秀

tomcat 面试 springboot

百度被绿了?

程序员生活志

百度 互联网 头条

开发速度正在杀死敏捷吗?_研发效能_Michael Floyd_InfoQ精选文章