敏捷开发中Srcum框架的自我总结——超轻量级团队Scrum流程指南
何为Scrum?
让我们来看看官方定义:
Scrum是一个帮助团队协作的框架。就像橄榄球队为大赛而训练一样,Scrum鼓励团队通过经验学习,在解决问题的同时进行自我组织,并反思他们的胜负以不断改进。虽然Scrum是软件开发团队最常用的,但它的原则和教训可以应用于各种团队合作。这也是Scrum如此受欢迎的原因之一。Scrum通常被认为是一个敏捷的项目管理框架,它描述了一组会议、工具和角色,这些会议、工具和角色协同工作,帮助团队组织和管理他们的工作。
缘起
最近由于工作以及项目的需要,学习了解了一下Scrum开发流程,借此机会整理并总结了这篇文章,旨在帮助大家快速熟悉Scrum开发流程,更好更快的融入工作环境。
正文
Scrum流程总体而言是由一个个的Sprint的组成(冲刺阶段),通过一个个的Sprint开发周期,最终完成一个成熟的产品,这其中还穿插着几个重要的会议,Scrum流程中的会议并不是一般的“形式主义”,而是为了帮助成员更好的进行配合,它应该是无领导的,自发性的。
本文采用树形列表阐述Scrum的详细要点以及补充,其中包括了Scrum的角色定义,总体概括和关键的流程控制会议。
Scrum
角色
产品负责人
- 决定每一个Sprint中需要完成的特性的优先级
- 动态调整todo list
- 需要根据用户或市场需求来确定下一个Sprint增量
- 团队
- 各个成员,DEV,BA,UX等等
ScrumMaster
- 确保每个人(包括产品负责人和管理者)理解Scrum中的原则和实践,并且他们帮助带领组织完成敏捷开发要取得成功所需的那些通常都很困难的改变
- 类似协调开发人员的保姆,指导大家要开什么会等等,不参与具体的技术指导,只进行流程指导
概括
- 整个项目开发过程,由名为Sprint的工作周期组成
- 每周周期不超过2周(最多4),无论是否完成都结束
- 每个周期的交付是能真正被完成的东西
- 动态调整,目的优先
Sprint计划会议
- 这是一个为Sprint做准备的会议,通常分成两部分(第一部分关于“做什么”,第二部分关于“怎么做”)
- 细分出任务,生成Sprint待办事项列表。
- 产出一个任务板,例如trello,任务在待办,在制作,完成之间移动
每日Scrum会议(站会)
- 控制在15分钟以内,自发性会议,分享性质
成员一个个报告三件事
- 自上次以来 做了什么
- 接下来准备做完什么
- 有什么问题 阻碍
- 建议管理者或者有权威的人不要参加,避免成员感到被“监视”,会有压力,不愿说出问题,破坏自管理
产品待办事项列表梳理(迭代计划会)
- 包含详细的需求分析,拆分大的task,估计事项时间,回顾已完成的事项等等
- 没有具体做这个工作的时间,一般是在一个Sprint的中部或者结尾时
- 它不是为了当前的Sprint已经做的事情,主要是为了下一个Sprint
Sprint评审会议
- 每一个Sprint结束之后
- 每一周的开发对应一个小时
- 用来对于产品的审视并调整,而非“演示”给leader
- 完成的软件并不是通过展示,而是由参与者实际尝试
Sprint回顾会议
- 在评审会议之后,针对流程和环境的审视并调整
- 成员们讨论怎么工作才好
- 不能只关注问题,要有一种欣赏式探询
开启下一个Sprint
- Sprint之间没有间歇期,遵循敏捷开发“可持续的步伐”的原则
Tips
- 切忌管理者强制团队使用Scrum
- 它强调团队空间以及自我管理
- 先让成员自己了解,再进行培训
- 尝试一个Sprint再决定是否使用
Reference
- https://www.atlassian.com/agile/scrum
- Scrum理论与实践的轻量级指南 第2.0版