SCRUM开发流程介绍
一、Scrum概述
Scrum是迭代的,增量型的流程。
Scrum构造的产品迭代周期为Sprints,工作的迭代周期一般为一到四周。
Sprints是有固定的周期——结束于固定明确的日期,无论该工作完成与否,从不延长。
在每一Sprint的启动阶段,一个多职能的团队长弄个已优先化的要求列表中挑选若干项目,并承诺在Sprint的末期完成这些项目。
每一工作日,团队成员互相通告工作进度,并更新简易的剩余工作量直观表示图表。
在Sprint的末期,团队将对这一阶段工作结果作一一展示并取得相关反馈,为下一Sprint做好准备。
Scrum强调生产可以使用的产品,意指在Sprint的末期产品的“完成”;
在软件方面,是指编码已经被检测并可以随时交付使用。
二、Scrum中的角色
1、产品所有者
负责收集相关于产品的所有信息
一般由客户本人、客户代表或产品经理、产品市场经理担任
2、开发团队成员
通常包括五到十个成员
3、ScrumMaster
以任何方式帮助整个团队取得成功。
不是团队经理,服务于整个团队,帮助团队成员铲除壁垒而取得成功。
一般由团队中某一人全职或兼职担任。
不应和产品所有者是同一人。
4、其他对项目成功做出重要贡献的人
如项目经理,支持开发团队使用Scrum
取代以前的“保姆”角色,转而承担起更多的“指导”角色。
三、Scrum方法的开发过程
1、计划和体系结构设计(确定性过程)
将Backlog按优先级排序形成Backlog列表,根据该表和风险评估制订产品交付基线。
建立系统体系结构,将Backlog项按高内聚低耦合的原则分解为一系列问题包,依据同样原则相应划分若干个开发小组(Scrum小组),分配各小组合适的Backlog项或问题包。
2、Sprint(经验性过程)
由若干个迭代的冲刺(Sprint)活动组成,直至风险评估认为产品可交付为止。
每个Sprint包含以下活动:
开发、打包、评审、调整
3、交付和巩固(确定性过程)
一旦根据风险评估结果认为可交付产品时,即进入该阶段。
活动包括:
组装、系统测试、回归测试、准备培训材料、完成最终文档
四、Scrum对过程的管理
1、八个控制项(Controls)用于开发过程的调控:
1)Backlog
2)对象/构建
3)Packets
4)变动(Changes)
5)难点(Problems)
6)问题(Issues)
7)措施(Solutions)
8)风险(Risks)***最重要***
2、六个概念性变量用于风险评估:
1)用户需求
2)时间压力
3)竞争
4)质量
5)远见(Vision)
6)可用资源
注:
管理人员侧重于管理Backlog;
开发组用以处理变动和难点;
所有人员一起来管理问题、风险和措施。
五、Scrum团队组织结构
全职开发人员与该交付产品有关的市场人员、销售人员、用户等组成。
设以下小组:
A 项目管理组:
由产品经理领衔,包括总设计师、各Scrum小组组长,市场、销售的高级职员以及典型用户等。
B 若干个Scrum小组:
由各小组组长(Scrum Master)领衔。
每个小组都是跨专业的(通常包括开发人员、文档人员、质量控制人员或用户代表等)
通常为3~7人,以使小组内有充分的交流。
小组划分最好是功能导向,也可是系统层次导向的
六、Scrum期间的调控
期间,应避免小组受到外界的干扰,(不可将新的Backlog任务加进来)
具体措施:
A Scrum会议,每天在同一地点举行,Scrum Master主持。
问三个问题:昨天工作进展;是否有困难和障碍;今天的工作打算
B Sprint评审会议
根据每人的工作成绩,进行相应的激励。
七、Scrum开发流程包括的主要步骤
1、Scrum起始
产品所有者清晰地展示产品的未来景象(Visison)
按照客户和商业价值排序展示优先级列表
2、Sprint计划会议
每一Sprint的起始阶段
产品所有者和Scrum开发团队共同评审Backlog,讨论各项目的目标和背景
Scrum开发团队挑选项目并承诺在Sprint的末期完成任务。
3、每日(站立)例会
每个成员澄清三个问题:昨天工作进展;是否有困难和障碍;今天的工作打算
4、Sprint评审
参与人:产品所有者、开发团队成员、ScrumMaster、客户、项目管理者、专家、高层人士,其他任何对此感兴趣的人
每个Sprint结束,简单的展示工作成果,听取意见和建议
不是成果“演讲”,No PPT
目的是对工作成果的展示和听取反馈
5、Sprint回顾
使Scrum成果的重要方法之一
提供机会讨论什么方法能起作用,什么方法不起作用,并一致通过改进方法。
6、开始下一个Sprint
在上一周期结束后立即开始没有间隔
如开发团队在下午时间进行Sprint评审后,第二天上午进行下一个Sprint计划会议
遵循Agile开发的价值观之一“可持续性”
7、产品发布计划,
Sprint持续直至产品所有者决定产品已经可以准备发布
启动“发布Sprint”来进行最后的整合和发布产品前的检测。
参考:
http://wenku.baidu.com/view/131e1af9aef8941ea76e051c.html
http://www.cnblogs.com/netflu/archive/2011/07/28/2119673.html
http://developer.51cto.com/art/200907/136850.htm