写点什么

构建产品需要多久?

  • 2011-09-26
  • 本文字数:1221 字

    阅读完需:约 4 分钟

交付产品大概需要多少时间,这是客户常常提出的问题,也是让敏捷团队感到不爽的问题。一方面,在没有开始动手前就估算整个产品功能的工作量,等于无头苍蝇到处乱撞。然而,很多情况下,这是一个很现实的问题,团队不能将其抛在脑后。

Jarrod Roberson 提到:不应该估算一整个项目,因为这与敏捷哲学完全是背道而驰。团队最多能够做到的,是根据成本和其他约束条件设定一个日期,产品负责人应该判断到这个日期截止要完成哪些功能。Pascal Thivent 补充道:任何前期的估算都会导致固定的产品范围,这正是敏捷反对的。更极端的建议是:敏捷团队永远不要介入需要前期估算的项目中。

但是,这么做在现实世界中可行吗?

敏捷团队常常遇到这样的情况,客户需要一个大概的估算,以辅助多方面的决策。 Hugo Palma 认为

我认为,对于实现给定的功能,所有的客户都想了解大致估算,想知道要花多少钱。有人说:如果用敏捷,就不能这么做;我不同意。现实世界中的客户希望知道在一个项目上大概要花多少钱,至少有个粗略的概念,敏捷是可以调整、适应的。

Mike Cohn 提到:他常常被问及,交付一个产品大概要多少个小时。他推荐的第一种方式,是推迟分析,直到有足够的历史数据,或者在 sprint 规划会议上能够得到一些承诺,再做分析。不过,有时候是需要粗略估算。对于这样的情况,Mike 建议使用 backlog 取样技术,找出不同规模用户故事的平均小时数。

如果我们把 1 个点的故事平均一下,也许可以发现大概每个点数需要 3.2 个小时,2 个点的故事要拆分成任务,每个点数大概 4.3 个小时,3 个点的故事平均每个点 4.1 个小时,如此类推。 然后就可以把平均小时数与产品 backlog 中对应规模的故事数乘起来,再加总。

Mike 提醒大家注意:这种技术会把任务识别和估算步骤中引入的不足全部包括进去。Rob Bowley 的评论是: backlog 取样技术没有效果,因为软件开发无法预测,而且像这样的技术估算出来的工作量会低于实际要完成的工作量。

尝试这么做,是没有道理可言的。它必将大大低估所需的工作量。考虑到软件开发需要投入的资金,结果就是对组织造成财务上的伤害,或是毁掉某些人的事业。

Matteo Vaccari 提到:尽管使用 backlog 采样估算也许有助于得到一些数字,但还是会不断出现新的未知数,比如团队成熟度、一起工作的历史数据、完成的定义,等等;这些都将使得估算失去作用。

这种情形下的另一种选择,是采取Martin Fowler 提议的“柔软范围(Scope Limbering)”方法,其用意是:从固定范围合同开始,然后逐步教育客户敏捷的优点,帮助他们克服“固定范围的海市蜃楼(FixedScopeMirage)”。Rob Thomsett 提议的“翻番再加一点(double and add some)”游戏,也与Martin 的方法类似。

因此,在真正意义上,看起来没有哪个方法是完备的。它们都有某种程度的主观性,因此有自己的问题。不过,如果在需要粗略估算的场景中使用这些技术,也许能帮助利益相关者做出更成熟的决策。

查看英文原文: InfoQ: How Long Would it Take to Build the Product?

2011-09-26 21:292035
用户头像

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

关注

评论

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

爆肝!《Java权威面试指南(阿里版)》,冲击“金三银四”有望了

程序知音

Java java面试 java架构 后端技术 Java面试八股文

Wallys/QSDK IPQ6010/wifi mesh function supports qcn9074/qcn6024 M.2 E Key Interface

Cindy-wallys

IPQ6010 ipq6018 IPQ6000

EasyNLP集成K-Global Pointer算法,支持中文信息抽取

阿里云大数据AI技术

人工智能 深度学习 信息抽取 算法模型 企业号 2 月 PK 榜

DevEco Studio 3.1 Beta1版本发布——新增六大关键特性,开发更高效

HarmonyOS开发者

HarmonyOS

即时通讯技即时通讯技术文集(第8期):移动端弱网优化系列 [共14篇]

JackJiang

云小课|MRS基础原理之Hue组件介绍

华为云开发者联盟

大数据 华为云 企业号 2 月 PK 榜 华为云开发者联盟

多模并起,万向融合 | 2023年2月《中国数据库行业分析报告》精彩抢先看

墨天轮

数据库 HTAP MatrixDB 多模数据库 超融合数据库

测试角色在项目各阶段的项目管理tips

京东科技开发者

项目管理 测试 测试 单元测试 企业号 2 月 PK 榜

Fine BI、Smart BI怎么办,瓴羊Quick BI已经可以提供移动端自助分析整体解决方案!

对不起该用户已成仙‖

行云管家属于高新企业吗?安全吗?

行云管家

云计算 网络安全 高新企业 云管理 高新技术

TiDB x Aliyun 免费试用,竟还有这般福利?

TiDB 社区干货传送门

社区活动 版本测评 6.x 实践

ZBC通证月内已翻倍,Nautilus Chain 上线前夕的“开门红”

股市老人

数据库审计有什么用?过等保三级需要吗?

行云管家

数据库 等保 等级保护 数据库审计

华为云CodeArts Artifact,5大特性守护制品质量与安全

华为云开发者联盟

云计算 开发 华为云 企业号 2 月 PK 榜 华为云开发者联盟

LeetCode题解:2357. 使数组中所有元素都等于零,哈希表,详细注释

Lee Chen

JavaScript 算法 LeetCode 哈希表

互联网企业如何进行数字化转型?业务需求迭代频繁的应对之策!

优秀

数字化转型 互联网行业

英方软件加入龙蜥社区,联手夯实数字基础设施坚实底座

OpenAnolis小助手

开源 数据复制 英方软件 龙蜥社区 CLA

云数据库 TiDB 初使用

TiDB 社区干货传送门

版本测评 安装 & 部署 性能测评 扩/缩容 6.x 实践

前端监控之性能与异常

京东科技开发者

监控 服务端 页面 企业号 2 月 PK 榜 js代码

云数据库TiDB免费试用初体验

TiDB 社区干货传送门

社区活动 6.x 实践

在字节跳动,造赛博古籍

字节跳动技术范儿

后端 nlp 搜索 OCR 多模态

不要 ChatGPT,我们要你!2023 涛思招聘季重磅来袭~

TDengine

数据库 tdengine 时序数据库

中冶赛迪:基于鲲鹏DevKit开发智慧城市基础设施管理平台,性能提升47%

Geek_2d6073

颜色的认识与使用(大屏颜色/仪表板报告设计)

Data 探险实验室

大屏配色 颜色 可视化颜色 配色搭配

云数据库 TiDB 入门级别的体验

TiDB 社区干货传送门

6.x 实践

在流媒体时代,如何看待音乐版权?

HIFIVE音加加

知识产权 音乐 版权

ZBC通证月内已翻倍,Nautilus Chain 上线前夕的“开门红”

鳄鱼视界

C++中const和constexpr关键字解析:常量、函数和指针

小万哥

程序员 后端 开发 C/C++ const

云数据库TiDB-试用

TiDB 社区干货传送门

管理与运维 版本测评 安装 & 部署

LeetCode题解:2357. 使数组中所有元素都等于零,排序,详细注释

Lee Chen

JavaScript 算法 LeetCode

构建产品需要多久?_研发效能_Vikas Hazrati_InfoQ精选文章