敏捷CSM认证:精通敏捷Scum估算方法,高效完成项目!
咱们做项目的时候可能都遇到过这种情况:项目一开始信心满满,觉得 deadline 稳了。结果呢?各种意外状况频出,时间好像怎么都不够用了,最后项目只能无奈延期,整个团队都像霜打的茄子。
说到底,还是项目初期对工作量估计不足惹的祸!你可能会认为一个人做一件事需要5天,那5个人一起做,1天就能搞定!但实际上,估算不是一件简单的事,工作量也不是这种简单的加减法。
01、怎么进行估算?
传统的估算方法,就是按人和天来算的,是估计一个绝对值,计量单位就是人天或人时。
比如说:小明写一篇 500 字作文要2 小时(工作量 2 人时),小刚写同样的作文可能要 3 小时(工作量是3人时)。那到底写一篇500字的作文的实际工作量按2人时来算,还是按3人时来算?
因为人的能力是不一样的,用传统的估算方法,其实是很难衡量实际工作量的。
敏捷估算则另辟蹊径,它抛开了“人天”的绝对值,转而采用“故事点”这一相对值来衡量工作量的大小。
故事点是什么?
- 它是一个抽象的单位,就像厘米、千克、摄氏度一样,只是一个计量单位。
- 它是一个相对值,代表着工作量的大小,与具体的人员和时间无关。
如何使用故事点?
我们可以选择一个基准任务,例如写一篇200字的短文,将其定义为1个故事点。然后,根据其他任务与基准任务的相对工作量来估算故事点。
例如:
- 写一篇400字的短文,工作量是200字的两倍,估算为2个故事点。
- 写一篇600字的短文,工作量是200字的三倍,估算为3个故事点。
敏捷估算的优势:
- 简化计划制定:无需将人员和时间与具体任务绑定,计划更加灵活。
- 降低人员变动影响:工作量以故事点衡量,人员变动对计划影响较小。
- 促进团队协作:团队成员共同估算故事点,增强沟通和理解。
02、如何进行敏捷估算?
敏捷估算是一种快速且灵活的项目工作量评估方法,它聚焦于团队整体速度而非个人速度,帮助团队更好地规划迭代和预估项目周期。
以下是敏捷估算的步骤:
1. 建立基准故事点:
选择一个简单易懂的用户故事作为基准,将其工作量定义为“1个故事点”。
例如:开发一个简单的查询页面,可以作为基准故事,定义为 1 个故事点。
2. 相对估算其他故事:
将其他用户故事与基准故事进行比较,评估其工作量是基准故事的多少倍,从而得出该故事的点数。
例如:“查看个人基本信息” 与基准故事规模相似,因此也是 1 个故事点;而“录入个人基本资料” 则相对复杂,可能是 3 个故事点。
3. 计算总故事点数:
累计产品待办列表中所有用户故事的故事点数,得到项目总工作量。
4. 确定团队速度:
团队速度是指一个敏捷团队在一个迭代(Sprint)中能够完成的总故事点数。
例如:某个 Scrum 团队一个迭代可以完成 80 个故事点,那么 80 就是他们的团队速度。
5. 推算项目周期:
将项目总故事点数除以团队速度,即可得出完成项目所需的迭代次数。
例如:项目总规模为 1600 个故事点,团队速度为 80 个故事点/迭代,则预计需要 20个迭代才能完成。假设每个迭代为 2 周,那么项目周期约为 40周。
敏捷估算的要点小结:
- 相对估算: 使用故事点作为单位,它代表工作量的相对倍数,而非绝对时间。
- 关注规模: 规模以故事点计量,与时间、周期、人天或人时无关。
- 团队速度: 敏捷估算关注团队整体速度,而非个人速度。
- 推算周期: 通过总规模和团队速度,可以推算出项目所需的大致周期。
03、常用的敏捷估算方法

1. 宽带德尔菲技术: 这是一种基于专家意见的迭代式估算方法。团队成员匿名提供估算,然后汇总并讨论差异,经过几轮迭代最终达成共识。
主持人通过估算会议来收集和画出每个参与人的估算。每个参与人估算的结果都会在 X 轴第一轮那条线上显示出来。一开始的估算范围可能大得离谱。讨论完最初的估算后,所有参与者都会修改自己的估算。主持人再把这些新估算收集起来贴在同样的图上,比如“第二轮”那条线。后面几轮的估算分布会越来越接近。

2. 宽带德尔菲技术之计划扑克: 敏捷团队最好的估算方法是计划扑克,也称为敏捷扑克、Scrum扑克。团队成员使用预先设定好故事点值的卡片进行估算,同时亮牌有差异的话就进行讨论,最终达成一致的估算结果。
宽带德尔菲技术常用“计划扑克”操作,通过卡片数字进行估算,这些数字是故事点(一般采用斐波那契数列的数字)。


3. 亲和估算:也叫三角测量,这是一种快速、粗略的估算方法,经常用来估算大规模用户故事。团队成员将用户故事分组,每组代表大致相同的工作量。再把不同规模大小的用户故事按顺序排列,并贴到墙上,然后再将每个故事卡移动到合适的列上。

4. T恤估算: 跟亲和估算比较类似,使用不同尺寸的T恤(XS、S、M、L、XL)来代表用户故事的相对工作量。

不同的敏捷估算方法各有优缺点,主要区别在于估算精度和估算所耗费的时间成本,我们可以根据项目的具体情况和需求选择最合适的方法,或者组合使用多种方法以提高估算的准确性和效率。
比如:
- 如果要估算的故事多且团队信息不充分,最好用亲和估算,能快速出结果,但不够精确。一般估算product backlog 就是这样估算。
- 要是估算单个故事,或者对一个迭代进行估算。这时需要精准估算,最好用计划扑克。
好了,以上就是关于敏捷估算的一些基础内容。如果你想要掌握更多敏捷方法、工具和技术,或者更系统地学习Scrum的知识和技能,小艾老师推荐大家参加Scrum Master敏捷专家(CSM)认证培训。
最后给大家附上关于CSM认证的一些信息,小艾老师已帮大家整理成表格和图片,需要高清图片可以私聊小艾老师获取~~

相关文章:
敏捷CSM认证:精通敏捷Scum估算方法,高效完成项目!
咱们做项目的时候可能都遇到过这种情况:项目一开始信心满满,觉得 deadline 稳了。结果呢?各种意外状况频出,时间好像怎么都不够用了,最后项目只能无奈延期,整个团队都像霜打的茄子。 说到底,还…...
三、建造者模式
文章目录 1 基本介绍2 案例2.1 Car 类2.2 CarBuilder 抽象类2.3 EconomyCarBuilder 类2.4 LuxuryCarBuilder 类2.5 CarDirector 类2.6 测试程序2.7 测试结果2.8 总结 3 各角色之间的关系3.1 角色3.1.1 Product ( 产品 )3.1.2 Builder ( 抽象建造者 )3.1.3 ConcreteBuilder ( 具…...
MySQL-----索引
一、什么是索引 存储引擎用于快速找到记录的一种数据结构。 索引类似于目录。就比如我们要找书里的一段话,我们先按目录找,然后再具体定位,这样速度会很快。 二、索引的作用 通过创建唯一性索引,可以保证数据库表中每一行数据的…...
Webpack 5 Tree Shaking与Module Federation
Webpack是一个流行的JavaScript模块打包器,它在前端工程化中扮演着核心角色。Webpack 5引入了许多新特性,其中两个最值得关注的是Tree Shaking和Module Federation。这两个特性分别解决了代码体积优化和微前端架构的问题。接下来,我们将深入探…...
免费分享一套微信小程序图书馆座位预约管理系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】,帅呆了~~
大家好,我是java1234_小锋老师,看到一个不错的微信小程序图书馆座位预约管理系统(SpringBoot后端Vue管理端),分享下哈。 项目介绍 随着移动互联网技术的飞速发展和智能设备的普及,图书馆服务模式正在经历深刻的变革。本论文旨在…...
k8s入门:从安装到实际应用
Kubernetes (K8s) 入门指南:从安装到实际应用 Kubernetes 是一个开源的容器编排平台,用于自动化容器化应用程序的部署、扩展和管理。它能帮助你管理多个容器化应用程序,并确保它们在不同环境下的一致性和可用性。本文将介绍如何在本地环境安…...
基于Qt的上位机通用框架
0.前言 最近一年多的时间一直在开发设备控制相关的软件,加上之前在聚光的两年时间,前前后后开发这种设备控制类型的上位机软件也有三年的时间了。总结出了一套基于Qt的上位机编程框架,核心思想类似于C#的依赖注入,对象的初始化都…...
Vulnhub靶场DC-7练习
目录 0x00 准备0x01 主机信息收集0x02 站点信息收集1. 获取用户名/密码2. ssh连接目标主机3. drush命令修改Drupal密码 0x03 漏洞查找与利用1. Drupal写入php木马2. 连接shell3. 反弹shell并提权 0x04 总结 0x00 准备 下载链接:https://download.vulnhub.com/dc/DC-…...
吴恩达深度学习笔记1 Neural Networks and Deep Learning
参考视频:(超爽中英!) 2024公认最好的【吴恩达深度学习】教程!附课件代码 Professionalization of Deep Learning_哔哩哔哩_bilibili Neural Networks and Deep Learning 1. 深度学习引言(Introduction to Deep Learning) 2. 神 经 网 络 的 编 程 基 础…...
(十)Spring教程——Spring配置概述
目录 前言 1.Spring容器高层视图 2.基于XML的配置 前言 在使用Spring所提供的各项丰富而神奇的功能之前,必须在Spring IoC容器中装配好Bean,并建立好Bean和Bean之间的关联关系。Spring的配置文件已经很精简了,但是广大的开发者希望它做得更…...
飞书群聊机器人自定义机器人接入,并实现艾特@群成员功能
飞书群聊机器人还是比钉钉的要麻烦一点,钉钉的直接通过手机号就可以艾特群里面的人,但是飞书的要想艾特群里面的人,需要使用用户的 Open ID 或 User ID。这两个ID怎么获取呢?还需要在飞书的开放平台上创建一个应用,然后…...
CrowdStrike更新致850万Windows设备宕机,微软紧急救火!
7月18日,网络安全公司CrowdStrike发布了一次软件更新,导致全球大范围Windows系统宕机。 预估CrowdStrike的更新影响了将近850万台Windows设备,多行业服务因此停滞,全球打工人原地放假,坐等吃瓜,网络上爆梗…...
银行黄金交易流程
银行黄金交易流程 银行黄金交易流程通常包括以下几个步骤: 咨询和开户: 首先,客户需要到银行的贵金属交易柜台或在线平台咨询黄金交易的相关规定和手续,然后进行开户,在银行开立有关黄金交易的账户。这可能需要提供个…...
MATLAB实验五:MATLAB数据分析
1. 某线路上不同时间对应的电压如下表所示: 1)用 3 次多项式拟合(polyfit)该实验曲线,要求绘制 2 原始采样 点,并在 1~8 范围内,使用时间间隔为 0.2 的数据绘制拟合曲线。 建立一个脚本文件:text5_1.m 如下…...
Cannot perform upm operation: connect ETIMEDOUT 34.36.199.114:443 [NotFound]
版本:Unity 2018 Windows 问题:打开 Package Manager,加载报错 尝试解决: 删除项目文件里的Packages下的mainfest.json文件,然后重新打开项目(X)重新登录 Unity 账号(X)…...
Docusaurus VS VuePress:哪一个更适合你的技术文档?
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…...
昇思25天学习打卡营第25天|MindNLP ChatGLM-6B StreamChat
配置环节 %%capture captured_output !pip uninstall mindspore -y !pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore2.2.14 !pip install mindnlp !pip install mdtex2html配置国内镜像 !export HF_ENDPOINThttps://hf-mirror.com下载与加载模型 from m…...
海康威视综合安防管理平台 detection 前台RCE漏洞复现
0x01 产品简介 海康威视综合安防管理平台是一套“集成化”、“智能化”的平台,通过接入视频监控、一卡通、停车场、报警检测等系统的设备。海康威视集成化综合管理软件平台,可以对接入的视频监控点集中管理,实现统一部署、统一配置、统一管理和统一调度。 0x02 漏洞概述 海康…...
【BUG】已解决:ModuleNotFoundError: No module named ‘PIL‘
已解决:ModuleNotFoundError: No module named ‘PIL‘ 目录 已解决:ModuleNotFoundError: No module named ‘PIL‘ 【常见模块错误】 错误原因: 解决办法: 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我…...
css font 优化
文章目录 使用 font-display 控制字体加载预加载关键字体选择合适的字体文件类型按需创建字体文件HTTP 缓存优化 使用 font-display 控制字体加载 避免字体加载导致的空白 block:浏览器在短暂的阻塞期内不显示任何文本,直到字体加载完成。这可能导致页…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
