​​关注嘉为科技,获取运维新知

一、为什么不用“人天”?

传统的IT项目,尤其是软件开发项目,往往使用“人天”来作为工作量评估的量词、甚至是代表一种评估方式。在软件项目开发经典著作《人月神话》中,明确的指出了按“人月”或“人天”来评估需求工作量的巨大弊端,主因之一就是在于这个词让人产生了“可以使用更多的开发人员就可以更快速的完成软件开发”这一错觉。在Agile敏捷项目当中,大都避免在快速需求评估阶段使用“人天”。具体请参看《人月神话》。

《人月神话》中最著名的插图“焦油坑”

二、Story Point故事点

智能边缘计算作为一种新模式,使得物联网的每个边缘设备都具备数据采集、分析计算,通信,以及最重要的本地或就近的“智能”。新的智能边缘计算同时利用了云计算的能力,利用云来大规模的进行安全配置、部署和管理边缘设备,并能够根据设备类型和场景分配智能的能力,从而让智能在云和边缘之间流动,获得两全其美的结果。

计划扑克基于Story Point故事点,扑克牌牌面上印刷的巨大数字就是故事点。

那么,什么是故事点呢?

“故事点”是Scrum敏捷开发过程中所使用的概念,它代表某开发团队内部所推选的一个抽象的标准工作量。一个故事点,可以是大家熟悉的一件较独立、较简单工作的全部内容,比如,一个常见功能页面所涉及的所有的开发工作,包括该页面UI的设计、代码的编写、数据库表的设计等等。

这样一来,在快速评估的过程中,一个新需求大概的工作量是上述这个“标准工作量”的2倍的话,那这个新需求的粗略工作量就是2个故事点。

一副计划扑克提供了一组不连续的故事点数字,以便于代表不同大小需求的工作量。

计划扑克的故事点数序列,一套13张,同一种颜色

三、牌面数字的含义

0表示所选需求块非常简单,或者可以通过重用快速搞定,不需要精力就能完成;

?表示根据目前掌握的情况,暂时无法评估该需求块需要多少故事点,需要进一步了解与细化需求;

咖啡杯用于提示团队成员该休息了,实在太累了。

与纸币的规则类似,牌面没有的点数可以由多张牌累加而成

四、牌面最大数字才100,不够用怎么办?

任何一个大需求,都需要渐进明细、直到足够小足够详细才能进行设计编码。因此,对于开发人员进行设计而言,超级大的或很粗粒度需求是没有太大意义的。对于不少团队而言,仅一个大小为100故事点的需求,就可能需要消耗好几个迭代周期的工作量,更不用说大于100的了。

使出100牌的开发人员,往往是希望表达对于业务的庞大复杂的不解或者恐惧、或技术投入或风险的担心。而对于自己感觉更加不靠谱的,可以直接出那张问号卡牌。

对于像大部分人都会评估为40或100牌面的大需求,需要由Product Owner负责或牵头来不断细化,直至拆分为多个且足够详细、足够小的子需求,才有可能进入下一个迭代周期的开发排期。

可灵活组合的牌面

五、注意事项

每副扑克都会包含1~2张使用说明,中文或英文,介绍扑克的基本使用规则。

每位开发人员,应拿到一套13张,以便使用纸牌表达自己对某需求块工作量大小的快速评估。有些型号的计划扑克,会有四套,每套一种不同的颜色。参与评估的开发人员多,就需要同时使用多副扑克。

针对Product Owner每讲解的一个新需求,所有开发人员都需要同时出牌,以便能表达出每个人的独立观点。

点数最集中的评估结论往往会被采纳。与大多数差异很大的评估者可能会被提问说出自己评估的依据。对于该需求最了解的人员的评估,往往会被高度重视,而不是一味的少数服从多数。

六、小结

Planning Poker计划扑克是很多敏捷开发团队非常喜爱的小工具,几元十几元一副的超低成本,在需求的快速评估阶段,可以让每个团队都全情参与进来、并且“无废话”的独立表达自己的观点,若运用得当,则可能大幅提高早期工作量评估及需求排期的效率。每个团队还可以进行微调、探索最适合自身及项目特点的玩法。在这一阶段评估成功完成之后,需求仍然较粗,还需要进行进一步的需求细化和具体开发工作的拆分与认领。

【注:】本文部分图文内容来自相关公司及互联网,该部分的版权属于原所有者。

Agile敏捷开发Planning Poker简介的更多相关文章

  1. Agile 敏捷开发

    简单的说,敏捷开发是一种以人为核心.迭代.循序渐进的开发方法.在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征.换言之,就是把一个大项目分为多个相互联 ...

  2. 编程心法 之 Scrum - Agile 敏捷开发

    Scrum是一种敏捷开发的方法 先定一个能达到的小目标 Scrum 团队 包括产品负责人.开发团队和Scrum Master Product Owner 产品负责人:管理代办事项和优先级的唯一负责人. ...

  3. Scrum敏捷开发简介

    Agile 敏捷开发实践中,强调团队的自我管理.在 Scrum 中,自我团队管理体现在每天的 Scrum 会议中和日常的协同工作,在每天的 Scrum 例会中,团队成员一般回答一下几个问题 : 昨天完 ...

  4. 传统开发模型vs敏捷开发模型——过程模型的变革

    一.概念框架 在了解一个新概念的时候,最好的方法就是把它插入到原有的概念体系中.在不仅有助于对概念的记忆,更利于深刻地认识概念的本质.精髓.下图说明了"敏捷开发"在软件工程理论体系 ...

  5. 敏捷开发(Agile development)

    敏捷开发(Agile development) 敏捷开发是一种以人为核心.迭代.循序渐进的开发方法.在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征. ...

  6. 关于敏捷开发方法(Agile Software Development)的阅读笔记

    对“敏捷开发”(Agile Software Development)这个词,我是在这学期邹欣老师<现代程序设计>课上第一次听到的,刚听到时并不知道其具体指什么,只是从字面上直觉其意思应该 ...

  7. Agile Software Development ——敏捷开发

    敏捷? 过去几年中,软件行业中出现了一个新词汇——agile:与此同时,一个关于新的软件开发方式的变革正悄然兴起. 在老师的引导下,我阅读了Agile Guide网站上的几篇文章,并查阅了相关资料.不 ...

  8. Agile Development敏捷软件开发之何为敏捷开发

    敏捷软件开发之何为敏捷开发 敏捷开发,Agile Development,就是指能够在需求迅速变化的情况下快速开发软件.我们接触最多敏捷实践方式有:极限编程(XP).结对编程.测试驱动开发(TDD)等 ...

  9. 高效程序员的45个习惯·敏捷开发修炼之道(Practices of an Agile Developer)读书笔记

    首先,这本书值得再看一遍——这次的阅读,有很多东西都是知其“形”,不知其“神”的,这导致了我对其中某些建议持怀疑态度,接受了的建议也有待商榷. 总之,先记录本书的一些信息: Practices of ...

随机推荐

  1. 【转】RHEL(RedHat Enterprise Linux)5/6 ISO镜像下载

    本文贴出了RHEL(RedHat Enterprise Linux)发行版本中常用的服务器版本的ISO镜像文件,供大家下载学习使用,贴出的版本有RedHat Enterprise Linux(RHEL ...

  2. Linux使用——Linux命令——Linux文件压缩和解压使用记录

    一:tar(可压缩可解压) tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户.但是tar本身只是一个文件打包工具,只有和其他工具组合时才具有压 ...

  3. 彻底了解 suid, sgid ,sticky权限

    sticky: 粘性的, 如 : sticky tape: 粘胶带 /tmp, /var/tmp: 位 sticky: 表示: 第一, 任何用户都可以在该目录下创建文件(编辑自己的文件),第二, 但是 ...

  4. win10+vscode部署java开发环境

    目录 Java开发插件配置: 调试: 快捷键: 启动配置文件launch.json: 启动配置说明: Launch: Attach: User Setting: 遇到的问题: 参考: Java开发插件 ...

  5. Docker 命令收集

    Docker 命令收集 1.删除所有容器 docker rm $(docker ps -a -q) 2.删除所有镜像 docker rmi $(docker images -q) 3.启动镜像 doc ...

  6. SQL 检查 Varchar 是否能转换为 NUMERIC

    https://bbs.csdn.net/topics/390480323 ISNUMERIC(size_long)=1 (IIF( ISNUMERIC(size_long)=1 AND ISNUME ...

  7. 搭建git 服务器

    Gogs 什么是 Gogs? Gogs 是一款极易搭建的自助 Git 服务. https://gogs.io/docs

  8. 常用Iview样式布局

    type 布局模式,可选值为flex流式布局或不选,在现代浏览器下有效 flex 布局下的垂直对齐方式,align可选值为top.middle.bottom flex 布局下的水平排列方式,justi ...

  9. Console的9种用法

    Console的9种用法,1.显示信息的命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <!DOCTYPE html> <html> <he ...

  10. eclipse安装spring boot插件spring tool suite

    进行spring cloud的学习,要安装spring boot 的spring -tool-suite插件,我在第一次安装时,由于操作不当,两天才完全安装好,真的是要命了,感觉自己蠢死!下面就自己踩 ...