写点什么

出色的速度

  • 2009-05-19
  • 本文字数:1455 字

    阅读完需:约 5 分钟

Buddha Buck 最近向 Extreme Programming 讨论组 提出 这样一个问题 :对于由 7 个人构成、迭代持续两周的团队来说,是否存在一个“出色”的速度范围?在他看来,少于或等于 8 点的速度就表示团队的故事可能太大了。由此引发的讨论提供了一些答案,还揭示出问题背后的问题。

速度是用来预测团队未来工作效率的工具。如果团队在工作中涉及到的用户故事都是同样大小,也就是说要完成这些故事的工作量大致相同,我们就可以简单地计算团队每个迭代完成的故事数目。稳定的团队会倾向于在每个迭代中完成同样数目的这些大小相等的故事,并且管理层也会根据团队已知的能力来制定计划。

在很多情况下,故事的大小是不一样的。因此,故事都是估计出相对大小,经常称为“估算”。大小为 2 的故事就是大小为 1 的故事的两倍。大小为 3 的故事就是三倍,诸如此类。一般来说,如果估计大小为 2 的故事要花的时间是大小为 1 的故事的两倍,这也很正常。为了让这些估算更易于讨论,人们将故事大小的单位定为“点”,或称为“故事点”。因为,我们可以说完成 5 点的故事所需的时间是完成 1 点的故事的 5 倍。一般来看,稳定的团队会在每个迭代中完成固定点数的故事;这个点数就是团队的速度。因此,团队的能力决定了速度。速度可以衡量团队每个迭代中完成的工作量。

Steven E. Newton 这样描述“出色的”速度:“出色的速度可以用来准确预测在未来迭代中能够完成的工作量。”

Kent Beck 发现了另外一个了解团队速度的好处:

衡量能力的另外一个目的是要改善产出。如果你计划要完成的工作比实际能够完成的少,最后真正完成的也就少于实际可以做到的事情。如果你计划要完成的工作比实际能够完成的多,最后真正能够完成的同样也少于实际可以做到的事情。

Charlie Poole 提醒读者,开发人员喜欢思考实现故事需要多少工作量,而管理层和客户喜欢琢磨完成故事能够交付多少实际价值。大家都应该注意到:针对故事的估算和速度都与工作量大小、以及完成故事所用的时间有关。

Buddha 的问题表面上得到了答案,但是讨论组继续探讨问题背后的潜在议题。特别之处在于,Buddha 非常担心团队要完成的故事也许过大了。大家讨论认为小故事要比大故事更加值得采纳。

Tim Ottinger 指出小故事能够提供更频繁的里程碑,从而帮助团队与干系人总是可以了解到项目的实际进展情况。

很明显,没有哪个故事能够延续超过一个迭代的时间。想一想迭代中的故事,更大的故事总是更加不容易完成。没人希望自己处于要么完成 N 个点数,要么一个都不完成的境地。每个人都希望在迭代进行到一半的时候,有 40% 的故事点数已经完成了(我是指真正意义上的完成)。

Steven Gordon 分享了一些相关的指导方针:

  • 如果不确定故事是否足够小,那几乎可以确定它们确实太大了。
  • 如果故事太小了,团队会发现跟踪过小的故事会浪费很多管理成本。
  • 故事太小所造成的问题,远没有故事太大造成的问题严重。所以如果要犯错,也建议倾向于让故事变得过小。
  • 如果过小的故事是团队前进的最大障碍,那就应该恭喜团队:你们已经掌握了极限编程的要义。

Ron Jeffries 觉得,他希望看到一对程序员能够在一周内完成两到三个故事,这样的故事大小才是合适的。他对于故事点数的概念并不是特别在意:

我觉得整个的关注点有点过于偏移了,我也很后悔自己有些事情做得用力过度了。大家偏离了真正的重点,就是要将故事拆分得足够小,直到能够以大概相同的步调来完成它们。

您的团队是如何决定故事大小的?您是否认为团队的速度可以用来判断故事的大小是否没有问题?请在评论中提供您的想法。

查看英文原文: A Good Velocity

2009-05-19 10:441844
用户头像

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

关注

评论

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

多商户商城系统如何对接电商收付通?

CRMEB

高级Java面试经验总结:多家大厂简历优化+面试题目+面经+薪酬等

Java架构追梦

Java 程序员 面试 后端开发

一文看懂博睿数据AIOps场景、算法和能力

博睿数据

课程四

ASCE

服务器与普通台式机的对比及发展趋势

Finovy Cloud

gpu 云服务器 GPU服务器 GPU算力

博云首批通过欧拉技术测评,联合解决方案通过验证

BoCloud博云

新闻

基于云效AppStack实现环境管理 | 开箱即用

阿里云云效

阿里云 研发管理 研发 应用交付 环境管理

没日没夜做需求,就能交出满分答卷吗?

LigaAI

敏捷开发 需求

全网最细的短网址系统设计与实战

星牛君

MySQL redis 布隆过滤器 Java EE

时序数据库 VS 工业实时数据库

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

看端点科技如何以行业实践探索企业数字化转型新路径

科技热闻

浅谈商业模式---《北大-真格创业课》笔记(30/100)

hackstoic

商业模式 创业公司

SqlServer主备构建探索

Lane

SqlServer

在线Excel转公式工具

入门小站

工具

Tapdata Cloud 2.1.4 来啦:数据连接又上新,PolarDB MySQL、轻流开始接入,可自动标记不支持的字段类型

tapdata

SaaS 云数据库 Real Time DaaS polarDB DaaS

2022,「大厂云」还在找新着力点

ToB行业头条

Android C++系列:vector最佳实践

轻口味

c++ android 4月月更

向着阳光的华为,淬火而行的哪吒

脑极体

yarn add electron安装失败

空城机

YARN Electron

常见问题(FAQ)

源字节1号

linux之mktemp命令

入门小站

在线文本代码对比

入门小站

工具

“数聚赋能”,让实时数据中台成为惠企、惠民政策服务应用的源头活水

tapdata

数据中台 数字政务 实时数据 智慧政务

新品发布 | OpenHarmony面向教育行业的发行版+大赛预告来了~

拓维信息

活动 操作系统 OpenHarmony OpenAtom OpenHarmony OpenHarmony 3.1 Release

最佳实践 | 运维效率提升10倍的秘诀

星汉未来

DevOps 云原生 智能运维

Flutter 网络请求 Dio 拦截器详解

岛上码农

flutter ios 安卓开发 4月月更 跨平台应用

Redis太难?阿里P8总结的Redis灵魂拷问70题解析,还不懂我就哭了

Java架构追梦

Java 后端开发 程序员面试 Redis 数据结构

观测云新增俄勒冈站点,布局全球可观测服务网络

观测云

IDC最新报告:澳鹏AI全生命周期数据解决方案在市场上具独特优势

澳鹏Appen

人工智能 大数据 数据标注 训练数据 数据训练

TOGAF 10新鲜出炉了!

涛哥 数字产品和业务架构

企业架构 TOGAF

直播回顾:SIMD 指令集在 OpenJDK 中的现状与未来 | 龙蜥技术

OpenAnolis小助手

Java Openjdk simd arm 龙蜥社区

出色的速度_研发效能_Chris Sims_InfoQ精选文章