写点什么

使用#NoEstimates 制定计划

  • 2015-11-13
  • 本文字数:2136 字

    阅读完需:约 7 分钟

Gil Zilberfeld 说,人们习惯使用评估(use estimates)制定计划和做出决策,即使他们不善于评估。#NoEstimates 运动旨在为评估探索替代方案。在 Agile Testing Days 2015 上,Zilberfeld 将会举办使用#NoEstimates 制定计划的讲习班。

Agile Testing Days 将于 2015 年 11 月 9 号至 12 号,在德国波茨坦召开。第 7 届会议的座右铭是:

拥抱敏捷竞争力——通过提早、快速 & 迭代应用发布建立领导力。

InfoQ 将会推出本次会议的相关新闻报道、Q&A 和文章。

InfoQ 采访了 Zilberfeld,关于人们为什么要评估,他们如何寻找方法,从而更好地评估,并且 InfoQ 与他讨论了评估的替代方案。

InfoQ**:您能简单介绍一下,使用#NoEstimates制定计划 **是什么意思?

Zilberfeld:我们通常习惯于将计划建立在成本评估之上。这种思想是如此的根深蒂固。当你有一个想法,或者解决方案,管理者的本能反应是询问“这将花费多长时间”或者“这将花费多少成本”。于是,我们决定基于答案做还是不做。

这真的很遗憾,因为我们人类真的不善于评估。我们应该基于更好的方法做出决策,并且确实存在替代方案。本次讲习班就是基于评估的替代方案,这些方案你可以从讨论和#NoEstimates 标签中发现。

InfoQ:人们为什么要评估,他们希望从评估中得到什么?

Zilberfeld:这非常的有趣。如果你问人们,他们会告诉你如果没有评估,他们无法做出项目的相关决策。这就像他们被卡住了,直到你给他们一个数字。问题是,做出决策时,我们不是真的 * 需要 * 它,但是我们 * 想要 * 它。我们想做出自信的决策,当我们得到数字的时候,我们试着去看它是否符合我们的经验、观点、想法和知识。如果它在某种程度上符合,我们就可以自信地做出“做”(go)的决策。

另一部分是感觉能够掌控一切。评估就像是被雾笼罩的真空(fog vacuum)——它清除了所有的不确定性。如果这个数字符合我们的观点,当事情往不好的方向发展时,它给了我们骑虎难下的自信——控制项目。所有的这一切都需要正确的数字:)

InfoQ:在我看来,大多数人都不善于评估。有没有什么方法可以更好地评估?

Zilberfeld:当然,你可以在评估方面做得更好。问题是,即使你得到了更好的方法,现实也会刺痛你。因为我们认为事情将会如何发展与实际将会发生什么有着很大的脱节。我们很乐观,我们认为我们可以控制老虎,我们的观点扭曲了我们的数字。

Hofstadter 定律说:它总是需要更长的时间,即使你考虑了 Hofstadter 定律。我们在讲习班上有个游戏,为了让大家得出正确的评估,我们给出了所有条件,但是几乎所有的人得出的都是错误的评估。

我们应该记住,我们使用评估做出决策。这只是众多方法中的一种,如果我们擅长评估,也许我们应该尝试其它的方法。

InfoQ:如果评估不是我们应该选择的方法,那你建议的替代方案是什么?

Zilberfeld:我们可以看一下团队的跟踪记录——如果他们在过去做过类似的事情,那么你可能不需要评估,而是使用上一次的实际成本。但是,如果团队之前从没有做过类似的事情(或者如果没有人之前做过?),那么要求一个数字就没有多大意义。又有什么好处呢?与其围绕一个 2 年的成本评估做出做 / 不做的决策,我们可以进行小试验预算,这将告诉我们,我们是否走在通往宏伟目标的途中。我们改变我们计划的方法,从大型的前期计划变成深思熟虑的发现,通过使用廉价的试验,并且我们可以在任何时候停止试验。

最后,如果我们太热衷于评估,与其评估成本为什么不评估商业价值?这些仍然是评估,我们可以基于价值而不仅仅是成本优先考虑项目。离开商业价值,我们做出的决定都是糟糕的决定。

InfoQ**:#NoEstimates是否意味着你应该从不做任何评估?评估是有害的吗?**

Zilberfeld:#NoEstimates 听起来像是关于废除评估。但是它的的确确是寻找替代方案。这个问题被提出的频率很高,但是所有#NoEstimates 支持者的答案都是一样的——如果要求评估,那就给出评估。评估不是有害的,但是他们经常被滥用。它们通常被认为是承诺而不是猜测。所以当评估失误,会招来失望,有时甚至是愤怒。也许更糟。抛开过程中的任何不确定性,当评估成功,他的专家权威会上升。

但是,这还不是全部。由于人们总是会漏掉评估,我们会看到经理会“扩展”给他们的评估。如果我说某事将会花费 3 周时间,我的经理会尽量给它一个缓冲期,说它将花费 5 周时间,然后他的经理为了确保我们没有遗漏,会说它将会花费 8 周时间。所以一个短期项目变成了中期项目。正如学生综合征一样,事情会拖延到最后一刻,那完全是一种浪费。

最后,如果评估不能提供我们需要的工具,整个计划过程就会浪费。如果成本评估是我们能够做决策的唯一工具,那么我们就会依靠直觉,而不是数据驱动。当你明白你从评估中真正得到什么,那么只使用这一种方法就变得不再有意义。

InfoQ:如果人们希望了解更多有关使用#NoEstimates制定计划,您有没有这方面的资源可以推荐?

Zilberfeld:你是指除了我的讲习班?如果你希望了解更多的#NoEstimates,你可以在 Twitter 上关注 Woody Zuill Neil Killick Vasco Duarte 。Vasco 还有一本新书,叫做 _surprisingly enough“ No Estimates”_。越来越多的人正在贡献他们是如何使用评估替代方案的故事,也许你可以挑选一个,与你的团队一起试验。

查看英文原文 Planning with #NoEstimates

2015-11-13 18:001256
用户头像

发布了 92 篇内容, 共 27.5 次阅读, 收获喜欢 4 次。

关注

评论

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

Service Provider Interface介绍

Skysper

spi

你所不知道的淘宝325秘密

Geek_i59t1w

ios 淘宝 325

鄙视链 & 全栈

伯薇

学习 能力提升 全栈

向往优雅的代码

Janenesome

编码习惯 读书

职位拆解:互联网-运营

小鲸数据

行业资讯 移动互联网 运营 AARRR

Lucene的Smart CN实现分词、停用词、扩展词

Page

中文分词 lucene 停用词 扩展词 SmartCN

ARTS week 1

刘昱

游戏夜读 | 刀塔选手比较老吗?

game1night

Kubernetes 资料集合

倪朋飞

学习 Kubernetes 架构模式

修改Tomcat窗口的名称

阡陌r

Java tomcat 踩坑 实施

【ARTS】Week 1

Amos

ARTS 打卡计划

我的 Windows Terminal 配置

FeiLong

Windows Terminal

LeetCode 241. Different Ways to Add Parentheses

liu_liu

LeetCode

Spring Data R2DBC 入门

稻草鸟人

MySQL WebFlux springboot R2DBC

LeetCode 1048. Longest String Chain

liu_liu

LeetCode

ARTS 01 - 为什么写作在远程工作中那么重要?

Calvin

ARTS 打卡计划

ARTS 第一周

onee

ARTS 打卡计划

手把手透析C语言堆内存申请malloc及扩容realloc

卓丁

c 堆内存管理 heap memory malloc realloc

字节跳动:高级人才的五个基本素质

池建强

人才培养

leetcode练级-只出现一次的数字

幸福三寸日光

算法 LeetCode js

“数据资产”究竟是“数据”还是“资产”

马踏飞机747

大数据 数据中台 数据治理 数据资产

ARTS打卡 week 1

猫吃小怪兽

ARTS 打卡计划

leetcode练级-只出现一次的数字 升级版

幸福三寸日光

算法 LeetCode js

【应用异常监控利器Sentry搭建与学习笔记】

卓丁

Docker Sertry Fasthttp CI/CD Go 语言

Mobileye如何在云上进行深度学习模型训练

Randy

自动驾驶 学习 AI AWS

我的读书生涯-小学到大学: 没有成长, 只有不断加深的疑惑

lmymirror

人生 读书 经历 半虚构

John 易筋 ARTS打卡Week 01

John(易筋)

ARTS 打卡计划

Python 3.6.1 官方文档练习——初入江湖(三)

小匚

Python python教程

转行程序员浅谈Linux下的多线程编程

WB

Linux 程序员 多线程

Linux如何调试内存泄漏

泰伦卢

c c++ C#

Java 火焰图

wong

Java flamegraph

使用#NoEstimates制定计划_语言 & 开发_Ben Linders_InfoQ精选文章