http://blog.sina.com.cn/s/blog_626bfd2b01016clg.html
第八篇
基本 Scrum 流程
Scrum是目前运用最广泛,具有很好可操作性的敏捷迭代式开发过程。该过程定义了在每一个迭代中团队所需要达到的目标,必要的会议,产出的成果,以及与客户的协作方式等,完全遵循敏捷宣言的精神。以至于很多人将敏捷就等同于Scrum,虽然这是一个不正确的认识。
Scrum基本流程和三个会议:
1. 迭代计划:团队在每个迭代要做的第一件事情就是进行迭代计划,目的是整个团队承诺在新一个迭代要达成的目标和要完成的具体工作内容
- 计划活动是一个正式的会议,该会议根据团队的大小,通常持续2-4小时;
- 该会议由Scrum Master组织,包括团队成员和Product Owner都必须参加,其它Stakeholders也尽量邀请参加
- 该会议要形成两项成果:
- 1.迭代目标,即该迭代所能给客户带来的核心价值;
- 2.详细的迭代计划清单,即团队承诺在迭代要实现的用户故事以及分解出的任务
2. 迭代周期:计划活动之后就进入一个迭代具体的开发工作,包括分析,设计,编程和测试等各种活动
- 敏捷要求快速迭代!一个Scrum迭代建议在2-4个星期,如果可能,通常选择2个星期为迭代周期
- 在每一天的固定时间,固定地点,召开Daily Scrum会议,也称为“每日站立会议”(如果团队都在一个location,建议以站立方式进行会议),该会议由Scrum Master组织
- 每日站立会议仅限于15分钟,不具体讨论任何内容,仅仅每个成员轮流回答以下三个问题:
- 昨天你做了什么?
- 今天你计划做什么:
- 有什么困难阻碍你的进展?
- 每日站立会议每个成员必须更新他进行的任务的剩余工作时间(用于跟踪和生成燃尽图)
- Scrum Master需要记录每个人可能遇到的困难和障碍(在会后,协助成员解决他们的困难,并跟踪此列表)
3. 迭代成果:每个迭代结束原计划的目标得以实现,并且所有计划的用户故事都已经真正“完成”。团队对此进行回顾,并向相关人员演示成果。
- 迭代回顾是一个非正式的会议,可能是一个较长的会议,也可能是几个较短的会议,取决于要进行的活动和相关人员的时间
- 迭代回顾所有活动也是由Scrum Master组织,所有团队成员和Product Owner都必须参加,其它Stakeholders也尽量邀请参加
- 迭代回顾基本上包括两类活动:
- 对外的,开发团队向Product Owner或客户演示该迭代完成的工作:不是仅仅汇报或描述,而是真正得使用产品,从业务角度展示可见的成果;通过展示主动获得用户的反馈意见。
- 内部的,开发团队对迭代的成果,流程,实践进行反省,哪些做得好,哪些做得不好,制定改进的行动计划。周期性得进行此活动帮助团队不断自我完善和持续改进。
在Scrum流程中,一个重要原则是,每个迭代计划的用户故事要在此迭代完成。但如何来衡量一个故事是否完成呢?不是开发人员宣布完成就完成了,而必须满足以下四个标准,我们称为“Done,Done,Done,Done”:
1 Done: 实现的功能必须已通过了测试,至少包括单元测试,功能验证测试;此外如果条件满足,还要完成集成测试,性能测试等
2 Done: 测试已验证其满足了所有故事预定义的验收条件,任何不通过验收条件的缺陷,或任何导致功能无法按预期使用的缺陷都已经解决了
3 Done: 其它发现的缺陷,如果不属于验收条件范围内,也不影响功能按预期使用,可以立刻解决的应立刻解决;无法立刻解决的,在经过团队讨论和与PO沟通后,作为缺陷或新的用户故事放入“未完成清单”,待以后处理
4 Done: 完成的功能已经向有效的相关人员,如产品负责人,有决策能力的客户等,进行演示