Scrum
Scrum是一种敏捷软件开发框架。基于经验性过程控制理论,采用迭代、增量(iterative and incremental)的方法来优化可预见性并控制风险。
三大支柱:
- 透明性 Transparency
- 检验 Inspection
- 适应性 Adaptation
Scrum框架包含模块:Scrum团队以及相关角色、事件、工件、规则
Scrum团队(Team):
自组织且跨功能。
* 产品负责人 (Product Owner) 负责最大化产品以及开发团队工作的价值。
管理产品代办事项列表的唯一负责人。
* 开发团队 (Development Team) 专业人员,负责在每个Sprint的结尾交付潜在可发布的“完成”产品增量。
规模:小到足以保持敏捷性,大到足以完成重要工作。3 ~ 9人
* Scrum Master 服务型领导,负责确保Scrum被理解并实施。
服务于:1产品负责人 2开发团队 3组织(Organization)
Scrum事件(Event):
每个事件都有时间盒(time-box)限定。
* Sprint 容纳其他事件的容器
Scrum的核心是小于或者等于一个月时间盒的Sprint,其产出是“完成”的、可用的、潜在可发布的产品增量。开发过程中周期一致。
只有产品负责人可取消(cancel)。
* Sprint计划会议
8小时/1月周期。整个Scrum团队计划Sprint中要完成的工作。
1 这个Sprint要做什么?
2 选出的工作如何完成?
Sprint目标:为开发团队在Sprint中所实现的功能留有一定的弹性。
* 每日例会
15分钟。同步活动并创建下个24小时的计划。
同一时间,同一地点。
汇报:1完成工作 2下次准备完成工作 3遇到的障碍
* Sprint评审
4小时会议。检验所交付的产品增量并按需调整产品代办事项列表。
* Sprint回顾
3小时会议。Scrum团队检验自身并创建下个Sprint改进计划的机会。
Scrum工件(Artifact):
* 产品待办事项列表 (Product Backlog)
排序的列表,包含所有产品需要的东西,也是产品需求变动的唯一来源。
优化:增添细节、估算和排序条目的举动。占用<10%的时间。
监控向目标前进的进度。只关心剩余工作和日期这两个变量。
预测进度:1趋势燃尽图(Burn Down Chart) 2燃烧图 3其他计划实践
* Sprint Backlog
一组为当前Sprint选出的产品代办事项列表条目,外加交付产品增量和实现Sprint目标的计划。
* 增量 (Increment)
一个Sprint及以前所有Sprint中完成的所有产品代办事项列表条目的总和。
“完成”的定义:用来评估产品增量在什么时候完成。