测试经理必知必会-Kanban和Scrum区别

敏捷开发的两种模式Kanban和Scrum两者有什么区别?且看下文一一拆解:

测试经理必知必会-Kanban和Scrum区别

1、理念

Kanban和Scrum都围绕着敏捷开发的理念展开。在敏捷开发实践中,负责人都需要使用迭代方法和用户故事。基本上,这种策略使用里程碑和自组织团队,而不是对每个项目采用全局性的方法。由于这种快速、灵活的方法论,敏捷开发人员具有竞争优势,能够在短时间内完成长项目。

当考虑Kanban和Scrum时,考虑目标是很重要的。

Kanban就是限制正在进行的工作的数量和可视化团队的工作。通过减少完成用户故事所需的时间,团队可以最大化工作流。

而使用Scrum,一个软件项目被划分为一组称为sprint的时间间隔。每个间隔都像一个学习循环,帮助团队学习和吸收反馈。

Scrum和Kanban的区别在于项目是如何执行的,以及项目对于突然变化的灵活性。

2、团队

Scrum和Kanban的一个明显区别是团队本身。

当用户使用Kanban时,没有关键的角色需求,因为结构非常灵活。相反,Kanban方法论只建议团队需要有一个项目经理。

Scrum恰恰相反。创建项目工作流时,必须分配关键角色。这些角色是针对Dev Team、ScrumMaster和Product Owner的。Dev Team负责完成每日待命中列出的任务。虽然Dev Team必须实现日常和总体目标,但Product Owner是设定这些目标的人。然后,ScrumMaster负责管理时间线。

如果负责人试图在Kanban团队和Scrum团队之间进行选择,那么角色需求是一个重要的考虑因素。Kanban是在Scrum不适用于团队的情况下使用的,您需要一个更灵活的选项。无论你选择哪一种方案,这两个方案仍然需要某种团队合作来实现目标。

3、进度

由于Kanban和Scrum都是管理工作流程的广泛系统,所以它们的截止日期、优先级和节奏之间的差异是比较这两个敏捷开发模式的关键。Kanban将重点放在优先顺序上,因为项目预计会随着时间的推移而发展和变化。相比之下,Scrum希望用户在sprint中清楚地描述项目的目标,因此不论谁都不应该在进行过程中更改计划。

Kanban允许用户为项目创建项目截止日期、流程、角色和限制。随着项目需求的变化,这些变量可以很容易地处理和更改。

与Kanban不同,Scrum对时间表有严格的关注。团队应该遵守纪律,并保持在预先设定的时间表和优先事项的重点之内。Scrum Team决定他们想要的点数分配,然后他们坚持下去。

如果团队使用Scrum,则必须对团队的能力和目标有很强的理解。每个sprint都需要一个可交付结果,如果想完成可交付结果,那么必须准确地预测项目的范围。在Scrum中,也不鼓励超过最后期限,因为大家应该在sprint期间完成目标。

4、节奏

节奏是Scrum和Kanban的另一个重要区别。

Scrum通常运行得更快,因为sprint的长度大约为2到4周。每个sprint都有一个明确的开始和结束日期。

因为Scrum的时间框架很短,所以它更容易处理复杂的任务。这些任务被分成小组可以快速处理的小故事。每个sprint包括sprint计划、sprint回顾、每日Scrum会议和回顾会议。

反之,Kanban就会有一个连续的流程。工作项在Kanban上的卡片上。每一张卡片都顺利地进入工作流的另一个阶段。在Toggl计划中,您可以快速地将任务从一种状态拖放到另一种状态,并添加颜色编码的标记以可视化每种类型的任务。

使用Kanban时,可以创建自定义列。比如常见的项目管理工具,如:JIRA、禅道等,都可以用不同的列来标识哪些任务正在进行、哪些正在等待批准、哪些已经完成。标签用于区分不同类型的设计(打印、社交、网络等)。使用这些板可以帮助团队发现流程中的瓶颈,这样团队可以改进。

5、任务板

在每个系统中,如何设置任务板也会有所不同。同样,这些功能乍看起来也很相似,但是在列和其他功能的工作方式上有一些关键的区别。

当用户查看Scrum板时,大家都会注意到列。这些列具有显示sprint backlog的开始和项目结束之前的所有步骤的标签。sprint中的用户故事应该在最后一列中结束,否则sprint无法成功实现其目标。

使用Kanban,列被标记以反映工作流中的不同位置。它们还显示了在任意给定时间点可以放入列中的最大故事数。因为团队成员可以不断添加新的故事,所以工作流板可以在项目展开时保持流动,而不是处理诸如sprint length之类的限制。

6、过程中的变革

有了Kanban,团队可以随时进行更改。无论何时,团队都可以将新的工作项添加到项目的backlog中。然后,团队可以移除现有卡并根据需要调整WIP限制。

当团队使用Scrum时,不应该在sprint中做任何改变。相反,团队会得到反馈,为下一次冲刺做准备。在每次迭代结束时,团队才有机会在sprint回顾中讨论将来的更改。

以上是Kanban和Scrum在敏捷开发具体实践中的六点不同,各位测试经理、负责人,大家可以在实践中慢慢体会。

源自公众号 自动化软件测试



留言