scrum敏捷开发重点介绍

参考:
 
Scrum是什么?
Scrum 是一个用于开发和维护复杂产品的框架 ,是一个增量的、迭代的开发过程。在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个Sprint,每个Sprint的建议长度是2到4周(互联网产品研发可以使用1周的Sprint)。在Scrum中,使用产品Backlog来管理产品的需求,产品backlog是一个按照商业价值排序的需求列表,列表条目的体现形式通常为用户故事。Scrum团队总是先开发对客户具有较高价值的需求。在Sprint中,Scrum团队从产品Backlog中挑选最高优先级的需求进行开发。挑选的需求在Sprint计划会议上经过讨论、分析和估算得到相应的任务列表,我们称它为Sprint backlog。在每个迭代结束时,Scrum团队将递交潜在可交付的产品增量。 Scrum起源于软件开发项目,但它适用于任何复杂的或是创新性的项目。
Scrum流程:
Scrum流程
 
敏捷估算
敏捷估算有如下几个特点:
1、团体集体估算
团队中每个人对项目提出自己的估算结果。根据结果,判断我们是否想法一致?我们是否存在分歧?有没有什么是我没有考虑到的?讨论之后可以再估算一轮,最终团队需要达成一致。
2. 估算大小,而不是估算时间周期,使用相对估算,而不是绝对估算
同一项工作,不同能力的人完成它花费的时间显然是不一样的。
敏捷估算时,我们不会估算绝对时间和周期,我们估算大小,和相对值,也就是倍数。敏捷估算时,我们使用故事点作为计量单位,它是一个倍数,我们会先找一个我们认为最小的一个功能的大小作为参考基准,定义为1个故事点,把其它的故事和它做比较,如果是2倍大小,就是2个故事点,如果是5倍大小,就是5个故事点。
3. 记录每个Sprint的团队速度
团队速率是一个Scrum团队在一个Sprint中实际完成的故事点数,通过团队速率可以知道团队做的有多快。新开始的项目或产品开发,或者是新团队,没有初始速度,我们可以做1-2个Sprint测算一个速度,作为初始速度。在Sprint执行过程中,我们要记录每个Sprint的速度,为以后的计划做参考。
 
Sprint迭代
Scrum是一种迭代和增量式的产品开发方法,Scrum通过Sprint(冲刺)来实现迭代。一个Sprint是指一个1周-4周的迭代,它是一个时间盒。Sprint的长度一旦确定,保持不变。Sprint的产出是“完成”的、可用 的、潜在可发布的产品增量。Sprint 在整个开发过程中的周期一致。新的 Sprint 在上一 个 Sprint 完成之后立即开始。 

Scrum采用迭代增量的方式,是因为需求是涌现的,我们对产品和需求的理解是渐进式的,Sprint长度越长,我们需要预测的越多,复杂度会提升、风险也会增加,所以Sprint的长度最多不超过4周。
在Sprint执行的过程中,团队要避免一个萝卜一个坑的工作方式,团队要协作,并且要集中优势兵力各个击破。
团队按照蜂拥式(Swarming)的工作方式,团队先集中工作在少数几个需求上面,协作完成它们,然后在开始下一批需求。按照这样的方式一方面可以加强团队协作,另外也有利于及早完成一些需求,让这些需求及早验收。
 
总结四大要点
  • Sprint,冲刺。即在一个固定的开发周期内,尽可能多地完成任务。
  • Iteration, 迭代。通过不断的迭代,实现产品的逐步优化,直到能满足用户使用的需求。
  • TDD-Test driven development,测试驱动开发,即通过测试推动整个开发的进行,有助于编写简洁可用和高质量的代码,并加速开发过程。
  • Gated Launch,灰度发布。即在发布的版本保留一定的灰度,出现问题能及时调整,同时能避免问题大范围爆发产生的影响。

posted on 2018-03-12 11:22  cquptzzq  阅读(640)  评论(0编辑  收藏  举报

导航