区别于传统的Waterfall瀑布式开发,Agile敏捷是理想型指标和原则,Scrum和Kanban是帮助团队坚持敏捷原则并完成工作的基本框架
Scrum | Kanban | |
---|---|---|
节奏 | 固定时间长度,例如两周 | Continuous flow |
发布 | 每个冲刺(迭代)结束时发布 | 自由发布 |
关键指标 | 速率 | 生产周期 |
角色 | •Product Owner •Development Team •Scrum Master | No existing roles |
应用场景 | 适合具有稳定优先级项目且可能不会随时间变化太多的团队 | 项目优先级经常变化的团队 |
其他 | 一个迭代中不能加入新的故事 |
Scrum:结构化的敏捷方法
使用Scrum的团队,需要承诺在每个Sprint结束时交付一些有价值的工作增量。Scrum专注于小的增量工作,帮助团队不断进行学习,以预测和了解到接下来要做什么。
Scrum工作节奏
Scrum发展很快,每2-4个星期就有一个明确的开始和结束日期。短时间框架迫使复杂的任务被分解成更小的需求,并帮助团队快速学习。但关键的问题是:您的团队能够如此快速地交付可用代码吗? Sprint 的进行中还包括 Sprint 计划、Sprint 评审和回顾会议,并穿插着每日Scrum 站立会议。这些Scrum仪式都是轻量级的,在循环任务的基础上运行。
交付方式
每次Sprint结束时发布版本一直是Scrum的最佳实践,团队为每个Sprint设置一个目标,在Sprint评审会议上决定是否要发布。
Scrum角色
Scrum有三个明确定义的角色:产品负责人为客户提供支持,管理产品 Backlog,并帮助开发团队确定所做工作的优先级;Scrum Master 帮助团队坚持 Scrum 原则;开发团队完成项目工作,交付增量。
那谁来管理 Scrum 团队?答案是:没有设定这个角色。Scrum 团队属于自治型,尽管职责不同,但每个人都是平等的,所有人都坚定于一个共同的目标:为客户提供有价值的产品。
关键指标
Scrum团队的核心指标是速度,即在一个Sprint周期中完成的需求数量,它为下一阶段Sprint及团队要承担的工作作出了预测性指导。
多变性
Scrum团队有时会得到客户反馈,并了解到他们所做的可能不符合客户的预期价值。在这种情况下,Sprint的范围应该以“客户期望的价值”为中心来改变。
看板:持续改进,流程灵活
看板有助于可视化我们手头的工作,限制正在进行的工作(work in progress, WIP),制定完整工作流程。看板对于项目任务复杂、优先级划分明晰的团队非常有用,Scrum需要对整体工作内容进行高度控制,而看板则灵活度更高。
看板工作节奏
看板基于一个连续的工作流结构,它能够让团队保持敏捷,随时准备适应不断变化的任务优先级。工作项(通常由卡片表示)排布在看板上,它们从工作流程的一个阶段流向下一个阶段,基本工作流阶段包括:To Do(未开始)- In Progress(进行中)- In Review(审查中)-Done(已完成)。
看板最大的优势是为团队定制出工作的标准流程。例如我们文章创作项目,流程包括“初稿-稿件审核中-稿件审核通过(待排期)-稿件已发布”,审核人可以很全面的把控内容的创作质量。
交付方式
理论上,看板并没有规定交付任务的固定时间。如果任务完成得更早(或更晚),团队就可以根据需要发布产品,而不必等待Sprint Review这样的发布里程碑。
看板的角色
整个团队都可以共享看板,也为所有需要交付的任务负责。虽然有些团队聘请了敏捷教练,但与Scrum不同的是,没有一个“看板大师”能让所有事情都顺利运行。
关键指标
交付时间和周期时间是看板团队的重要指标,即处理任务从开始到完成所需的平均时间。循环任务的完成时间的长短,体现了一个看板团队的效率高低。
看板中,处理工作瓶颈的方法是WIP限制,它可以控住工作流任何一个阶段中的卡片数量(即任务量)。当您达到WIP限制时,类似于Worktile的看板工具就会为该列(流程阶段)设置任务上限,团队就会更多的专注于这一阶段的工作。
多变性
看板十分灵活,工作项可以随时更改。新的工作项被添加到待办事项列表中,现有的卡片可以根据优先级的规划情况被暂定或删除。此外,如果团队工作量发生变化,可以重新校准WIP限制,并相应地调整工作项。