敏捷开发之SCRUM

来源:互联网 发布:赵毅衡和虹影姐姐知乎 编辑:程序博客网 时间:2024/06/11 17:04
 

Scrum是一个包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括:

  1. 'Scrum Master' 是Scrum教练和团队带头人,确保团队合理的运作Scrum,并帮助团队移除实施中的障碍;
  2. 产品负责人(Product Owner),确定产品的方向和愿景,定义产品发布的内容、优先级及交付时间,为产品ROI负责;
  3. 开发团队(Team),一个跨职能的小团队,人数5-9人,团队拥有交付可用软件需要的各种技能。

在每一次冲刺(一个15到30天的周期,其长度由开发团队决定)当中,开发团队创建可用的(可以随时推出)软件的一个增量。每一个冲刺所要实现的功能来自产品订单(product backlog)。

Scrum会议

在冲刺中,每一天都会举行项目状况会议,被称为“scrum”或“每日站立会议”。在会议上,每个团队成员需要回答三个问题:

  • 今天你完成了那些工作?
  • 明天你打算做什么?
  • 完成你的目标是否存在什么障碍?(Scrum主管需要记下这些障碍)

每一个冲刺完成后,都会举行一次冲刺回顾会议,在会议上所有团队成员都要反思这个冲刺。举行冲刺回顾会议是为了进行持续过程改进。会议的时间限制在4小时。

=======================

User Story

对于Scrum开发来说,User Story是开发的基础,它不同于传统的UDD开发方式,而是把原本需求拆成最小粒度的Story,以方便Scrum小组拆分Task,估计开发时间,领取开发任务。

User Story不需要太过于详细,只有在正式开发时,做详细设计时在进入Detail阶段,如果初期时间估算不准确,实际工作量增多时,Sprint Chart需要适当的Burn-up。

User Story模板

User Story可以遵循以下模板:

As a <User Type>

I want to <achieve goal>

So that  I can <get some value>

翻译成中文就是:

作为一个<某种类型的用户>

我要<达成某些目的>

我这么做的原因是<开发的价值>