写点什么

Story points vs. Working hours

  • 2008-04-13
  • 本文字数:1477 字

    阅读完需:约 5 分钟

在 Agile 中, Story point 和 Working hours 都是用于评估完成每个 Story 所要付出劳动,只不过前者使用相对尺寸来估计,后者则使用绝对时间。那么,在实际工作中,Story point 和 Working hours 是否需要联系到一起?

最近,徐毅在 AgileChina 讨论组提出有关“究竟有没有必要或者有没有意义将 Story point 与 Working hours 牵连到一起?”的疑问。之所以有这么一问,是由于他注意到,貌似上层管理者用这些数据来进行人力资源规划。

即部门有多少人头,按照历史的 story point 消耗速率,和汇报的相关人员的 capacity 总和(working hours)来个除法,得到个系数,用这个系数来评估当前的资源状况等,如是否有足够的人力来完成项目。

同时,他认为 story point 更多的是讲求相对大小,而用 working hours 进行估算后,很容易在开发时被直接度量,有“客观标准”之嫌,想了解讨论组中其他人对这个问题的看法。 而 ifire zhang 则认为,这种联系没有太大必要,并以其所在项目的做法为例。

一般把 sprint backlog 分解为 1 天的粒度就 OK 了。然后,如果这个 sprint 里 backlog 过多,则去掉一些,少了则增加一些。

Wang Lijie 也认为,二者任选其一足矣,并指出:

出于更好的计算工作量,我们直接使用的就是 Working Hour, one task no more than 12 hours(2 days)。 个人觉得,使用 Story Point 就不应该再用 working hours, 二者还是有冲突的。

blackanger 所在的团队的做法与上述观点相反。

我们现在是把 story point 和 working hour 挂钩的。也就是说,一个 story point 代表 1 hour, 然后根据实际花费 hours 来评估团队生产力的值。 这样在一个迭代以后,可以评估团队的生产力。帮助计算团队不断的进化的程度。

Anchuan Qian 则指出,脱离特定的团队或项目泛泛地谈这两个东西没什么意义,并给出了自己的观点。

既然是估算,我有两个问题:
1、估算的目的是什么?
2、估算的标准和单位是什么? 1、不可能每个人的目的都一样。我们的目的是更清楚的了解自己的开发能力和工作进度,然后科学的做下一步的计划,更好的控制项目。

2、既然是这样,那么估算就一定要客观和一致。而且毫无疑问,前提是在目前的团队和项目中进行(或者同等的团队和项目)。否则去比较这些数据就没有任何意义了。下面是我用过的两种方式:

一、功能点数。比如说:1、2、5、8、16,这是按照一个功能的复杂度(一般是一张卡片,即 User Story)的大小给值。最重要的就是要保持一致,后面的评估,都是参照前面的相似或类似的功能。

难点就是 Story 的粒度,和评估时候保持一致。

二、真实天数。我们现在就用这个,并且用 Mingle 管理项目,很科学。在做计划的时候,开发者会评估每张 Story 的大小(真实天);然后开发者在开发之前,会再评估一下 Story 的大小;然后 Mingle 也会记录一个开发者完成这张 Story 花费的真实时间(可以根据这些数据自动生成你需要的报表)。而且,真正开发时间特别有价值,它不仅是最好的参考,还可以用来推算其它方面的成本。

针对具体项目,使用 Story point 或 Working hours 都行,只要由团队来决定就行。而且,正如 Anchuan Qian 所说,记录这些历史数据非常有意义。但有些公司倾向于使用它来衡量个体的绩效(当把这种项目管理方式上升到组织级管理时,难免会有这样的需求,这不仅仅是 Agile 遇到的问题,CMMI 也有同样的问题),结果可能势得其反,看上去得到了质量良好的数据,实际意义却并不大。

您是否应用 Agile 方法?如果是的话,您如何看待 Stroy point 和 Working hours 的联系?如果您使用了其它方法,又是如何做项目估算的呢?作为 InfoQ 的热心读者,发表一下您的意见吧。

2008-04-13 19:251646
用户头像

发布了 100 篇内容, 共 21.9 次阅读, 收获喜欢 5 次。

关注

评论

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

1亿条数据批量插入 MySQL,哪种方式最快?

小小怪下士

Java MySQL 程序员

跨境电商ERP也爆单,分布式新型数据库迎战

OceanBase 数据库

数据库 oceanbase

谈谈我工作中的23个设计模式

阿里巴巴云原生

阿里云 云原生 技术文章

大数据培训程序员都去做什么了

小谷哥

移动跨平台技术方案选型建议

Onegun

移动端 跨端开发 跨端框架

DDD与EDA-核心逻辑提炼方法论

胖子笑西风

Java 架构 DDD 事件驱动 EDA

华夏天信携手华为云开天aPaaS,打造安全、高效、节能的主煤流运输系统

华为云开发者联盟

云计算 后端 华为云

PGL图学习之基于GNN模型新冠疫苗任务[系列九]

汀丶人工智能

图神经网络 GNN 11月月更

上新啦KIT

HarmonyOS SDK

HMS Core

2023年 DevOps 七大趋势

SEAL安全

云原生微服务治理技术朝无代理架构的演进之路

华为云开发者联盟

云计算 云原生 后端 华为云 微服务治理

什么?Coolbpf 不仅可以远程编译,还可以发现网络抖动! | 龙蜥技术

OpenAnolis小助手

Linux 开源 ebpf coolbpf 龙蜥峰会

大数据培训前景怎么样?

小谷哥

技术实战:初创项目前端框架选型

FinFish

前端开发 前端框架 技术选型 移动开发

教育机构客户管理系统功能方案详解!

优秀

CRM系统 客户关系管理系统

异常捕获中finally和return的用法

自由呼吸

Java 11月月更

元宇宙赛道逐渐清晰,虚实世界如何“破壁”?

旺链科技

区块链 产业区块链 元宇宙

ShareSDK Android端权限说明

MobTech袤博科技

Function源码解析与实践

京东科技开发者

编程语言 Function 编程‘’ 后端、

前端哪个培训学习比较好?

小谷哥

SQL面试 100 问

FunTester

要想后期修改少,代码重构要趁早

华为云开发者联盟

云计算 后端 华为云

KVC原理与数据筛选

京东科技开发者

后端 数据处理 KV存储引擎 KV查询

移动跨端框架发展史及优劣对比

FinFish

前端框架 跨端框架 移动端跨端 跨端发展

web前端培训学习后还有做前端开发的吗

小谷哥

1000 种兴趣和 1000 个兴趣小组 | 学点战略

赵新龙

TGO鲲鹏会 CTO 战略

预告|2022 星策 Summit 首批嘉宾确认,大会火热报名中!

星策开源社区

机器学习 开源 数字化 管理层 企业转型

前端培训中应该怎么学习web前端

小谷哥

如何在几百万qps的网关服务中实现灵活调度策略

百度Geek说

网关 调度 动态配置 12 月 PK 榜

报名即将结束!11 大云原生领域开源技术干货一场拿下

阿里巴巴云原生

阿里云 开源 容器 微服务 云原生

行业分析| 实时音视频的多种用法

anyRTC开发者

音视频 实时音视频 实时通信 语音通话 视频通话

Story points vs. Working hours_研发效能_乔梁_InfoQ精选文章