zoukankan      html  css  js  c++  java
  • 用户故事与敏捷方法笔记 --- 估算与计划

    估算用户故事

    故事点:代表时间的模糊单位,叫NUT(Nebulous Units of Time)。

    故事点的特性是团队可以定义自己认为合适的故事点大小。它可以是一个理想日的工作,也可以是一个故事复杂度的测量。因此不同的团队,故事点有不同的意义。

    使用故事点估算的好处:

    • 无论什么时候获得有关故事的新信息,都允许我们改变之前的想法
    • 适用于史诗故事和小故事
    • 不需要花很多时间
    • 提供进度和剩余工作的有用信息
    • 不太精确的估算也不会有太大问题
    • 可以用来制定发布计划

    故事点估算应采用:

    1 以团队估算:1)还不确定团队中谁负责完成这个故事; 2)团队的决定可能比个人更准确

    2 德尔菲法:1)背靠背;2)少量解释;3)多轮

    3 三角测量:在估算一个故事时,根据这个故事与其他一个或多个故事的比较来估算,最后将估算值相同的故事点放在一起比较估算是否准确。

    发布计划

    排列故事优先级

    为了计划一个发布,客户必须排列故事的优先级,可以使用DSDM方法中的莫斯科(MosCoW)规则。MosCoW是以下短语的缩写:

    • 必须有(Must have) -- 系统的基本功能
    • 应该有(Should have) -- 很重要但短期内有替代解决方法的功能
    • 可以有(Could have) -- 没有时间就可以在发布中不予考虑的功能
    • 这次不会有(Won't have this time) -- 客户期望拥有但同时承认可以在后续发布中实现的功能

    优先级始终应该由客户来确定,在确定故事的优先级前,应该先估算故事的大小并提供给客户参考。另外,如果客户在确定一个故事的优先级需要困难时,很可能需要分隔故事,以便客户可以对更小的独立故事排列出不同的优先级。

    用故事点和优先级预计工期

    团队速率:团队在一轮迭代中能够完成的工作量。

    获得团队初始速率的方法有:

    1. 使用历史值
    2. 执行一轮初始迭代,使用那轮迭代的速率
    3. 猜测

    随着进行几轮迭代后,团队对于项目开发工期会获得实际速率,并以此来完善估算,获得更准确的发布计划。

    创建发布计划

    根据故事点,优先级,以及团队的速率,将故事放入到每轮迭代中,直至分配完所有的故事,就可以确定发布计划了。

    迭代计划

    在每一轮迭代开始前,整个团队通过举行迭代计划会议来为下一轮迭代做计划,迭代计划会议的一般内容如下:

    1 讨论故事

    迭代计划会议室是调整故事优先级的最佳时机。从优先级最高的故事开始,开发人员提问客户,直至充分理解故事,能从故事中分解出任务。

    2 分解任务

    将故事分解为更小的任务以便 1)分配给多名开发人员共同完成; 2)减少功能被遗漏或忘记的可能。

    3 承担责任

    由团队成员资源认领任务。虽然任务由不同的人认领,但实际上确保完成所有任务是团队中每个人的责任,团队要有一种“同舟共济”的心态。而且在迭代快要结束时,如果有开发人员不能完成他接受的所有任务,团队中的其他成员应该尽量用于承担。

    4 估算并确认

    由每个开发人员负责估算自己承担的工作量。然后把所有估算加起来,从而评估是否能够在迭代中完成所有的任务。同时,在迭代进行中,要不断的更新剩余的工作量。

    测试并监控速率

    测量速率

    将团队在本轮迭代中完成个故事的点事全部相加,就得到了本轮的开发速率。

    注意不要将未完成的故事也计算在速率中,因为 1)很难准确计算故事已完成的百分比;2)不建议将小数引入速率中;3)没有完成的故事通常不能给客户带来任何价值;4)应尽量避免许多故事完成90%,没有多少故事完成100%的情形。

    如果时常发生迭代结束时很多故事尚未完成的情况,可能是因为故事划分的不够小,也可能是团队内部缺乏合作的信号。

    计划速率和实际速率

    监测实际速率和计划速率的偏差很重要。一个比较好的方法是为每轮迭代画出计划速率和实际速率。

     另一个监控进展的好方法是迭代燃尽图(Brundown Chart),它展示了以故事点表示的在每轮迭代末剩余的工作量。

    从燃尽图中可以看到项目的整体进展,得到已完成的故事点表示的进展,也可以得到对剩余的计划故事点数的改变。但燃尽图无法提供团队速率,因为可能有新的需求加入。

    如果想要了解团队的速率,需求变化情况等,可以采用下面的表格:

      迭代1 迭代2 迭代3 迭代4
    迭代开始时故事点        
    在迭代中完成的        
    调整的估算        
    新故事的故事点        
    迭代结束时的故事点        

     

    迭代中的燃尽图

    燃尽图不仅可以用于在迭代结束时跟踪进展,还可以在迭代周期内作为团队自管理的工具。在迭代中,每日燃尽图可以展现在迭代内剩余的估算小时。

    另外,通过设计和检测平均每个故事点出现的缺陷数目,可以帮助我们发现团队速率的提高是不是以牺牲质量为代价。 

     

  • 相关阅读:
    Django REST framework解析器、渲染器、分页
    微前端qiankun从搭建到部署的实践
    前端开发常用免费资源,显著提升工作效率
    Vue切换页面时碰见过中断axios请求的场景吗?如何中断?
    JavaScript与ES的25个重要知识点!
    电脑端支付宝支付 -前端获取支付宝返回的form 以及submit 调用支付扫码页面
    element ui 分页记忆checked
    通过css改变svg img的颜色
    Howler.js Web音频播放终极解决方案
    5、Redis中对Set类型的操作命令
  • 原文地址:https://www.cnblogs.com/angela217/p/10102987.html
Copyright © 2011-2022 走看看