Scrum 提供了一个 Agile产品开发机制,让不同的个人或团队在一个特定的项目上进行合作。尽管Scrum 原则可以在不同的背景下使用,但这种方法的主要工作领域是软件开发。让我们来探讨一下Scrum对组织的好处和基本的Scrum框架,它驱动着整个过程。
什么是Scrum ?
Scrum 项目是一个用于产品制造,特别是软件开发的 框架。它侧重于明确的指示,积极的最后期限,以及在完成最终产品的过程中不断纳入反馈。Agile
它是一个快速、灵活、适应性强和有效的过程,旨在实现一个明确的目标,其中包含了最大的反馈,所以整个过程保持在正轨上。同时,它还结合了产品积压,以帮助开发团队更轻松地浮动和略过想法。在Scrum 过程中,明确的活动必须在预定的时期内完成。这些时期被称为冲刺,是Scrum方法论的一个重要组成部分。
简要的历史Scrum
Scrum 项目的历史只有几十年。开始于1986年,《哈佛商业评论》(HBR)发表了一篇题为 "新产品开发游戏"的文章,解释了像本田和佳能这样的公司在产品开发方面所遵循的机制。
基于这篇文章所讨论的主题,Scrum 方法论中使用的许多概念被开发出来。杰夫-萨瑟兰在1993年为软件开发过程创建了目前的Scrum 框架。从那时起,不同的行业都采用了这个过程来创造团队的敏捷性和以客户为中心的产品。
Scrum 工件
Scrum 工件提供了流程中不同阶段如何执行的细节。它的作用就像一个工具,使整个过程更容易管理。 工件是评估、调整和保持软件开发透明度的一个参考点。Scrum团队为特定的项目定义了工件。通常情况下,三个主要的scrum工件适用于任何项目,可以对性能进行深入了解。Scrum
这些包括。
产品积压
产品积压由现有产品所需的变化组成。特别是对于软件开发来说,错误修复、功能添加、速度改进以及其他为改进最终产品而需要完成的必要任务。 由于在这个过程中不断的升级,它总是保持着活力和发展。产品积压的来源通常是用户的意见或在测试阶段收集的信息--除了竞争对手的分析和一般商业环境。
冲刺积压(Sprint Backlog
你可以把冲刺积压称为Scrum工件的下一个阶段,在这个阶段,产品积压中的信息或任务被挑选出来,在一个特定的时间范围内(称为冲刺)进行处理。 一旦冲刺积压完成,下一个改进周期的可交付成果就会被设定;对最终确定的目标不会有任何补充。然而,当软件开发的实际工作开始时,实现这些设定的可交付成果所需的活动可能会有一定程度的改变。
产品增量
这是一个标志着冲刺结束的Scrum 工件,其中的交付物是根据早期阶段设定的已完成的定义而突出的。潜在的合理的产品增量scrum工件必须表明实时改进,而不是修复小错误。在每个冲刺结束时,列表中必须至少有一个增量。
Scrum 方法论和流程
Scrum 方法论是敏捷过程的演变,它将敏捷软件开发过程中涉及的活动分为更小的临时阶段,即冲刺阶段。该过程有一个明确的起点和一套清晰的目标,确保项目的可交付性。然而,还有不断学习和进化的空间。Scrum团队一开始不知道的事情,他们通常会在经历项目的过程中最终学会。
Scrum 原则的好处
以下是Scrum方法的主要好处以及Scrum 团队工作的机制。
- 团队合作
在使用Scrum原则时,你可以期待更好的团队合作。这是因为任务的描述是透明的,为软件开发任务的执行建立了一个简单明了的过程。此外,通过采用这种机制,为软件开发团队或个人成员之间的沟通设定了明确的界限。
- 灵活的方法
Scrum 要求从事项目的开发人员和软件开发团队根据开发阶段修改他们对概念的定义。此外,产品积压允许Scrum团队在任务被添加到冲刺阶段之前对其进行优先排序。所以,在任务没有被添加到冲刺阶段之前,它们是灵活的。
- 减少风险
采用Scrum方法可以大大降低流程中的风险。在软件开发过程中,有特定的最后期限和预定的交付物。因此,脱离轨道或偏离目标的机会是有限的。
- 纳入持续反馈
由于整个开发过程被划分为较小的冲刺阶段,新的反馈被纳入其中,它确保了高质量的成果交付和较少的返工。
- 更高ROI
用Scrum 框架创建的项目的预期投资回报率更高,因为反馈的融入使Scrum团队了解什么是需求。此外,由于这个框架导致了更少的错误,从而降低了成本。所有这些都反映在更高的ROI 。
Scrum 仪式或活动
开发团队要执行的连续或重复的任务被称为仪式或事件。尽管这些仪式对于Scrum框架来说是必不可少的,但你可以根据你的项目需求和开发团队的要求来调整它们。并非所有的软件开发团队在每个冲刺阶段都遵循这些仪式。
这里有几个重要的Scrum仪式;在你最终决定这些活动是否会成为未来冲刺的一部分之前,你可以先参与几个冲刺。
- 冲刺积压的梳理
在Scrum ,经常考虑的一个关键事件是,产品所有者必须维护冲刺积压,并推进已被所有利益相关者接受的建议,或与设定的总体软件开发目标相一致。为此目的而设置的会议就是冲刺积压会议。
- 冲刺计划会议
冲刺计划会议是由Scrum团队执行的另一个主要活动。在这个过程中,冲刺的细节被计划。通常情况下,冲刺会议由scrum master负责,为每个团队成员分配任务并澄清任何困惑。
- 每日Scrum 或站起来
你可能会也可能不会选择这些会议。但这个活动是为了澄清基于冲刺规划的未来24小时的行动计划。这些会议是快速的,通常在早上进行,以回答具体问题,并解释有关软件开发查询的日常任务。
- 冲刺回顾
在冲刺完成后,开发团队成员会对冲刺和冲刺期间进行的活动进行评估。简单地说,就是进行冲刺回顾。这个活动的目的是决定这个增量是否应该被发布,是否符合冲刺计划。所有成员都可以提出建议,但项目负责人是做出决定的权威。
- 冲刺回顾
这个活动展示了对冲刺的整体看法,包括成功和失败的事情,包括技术、角色和关系。在Scrum方法中,冲刺回顾的目的是创造一个更好的协作环境,可以提高团队精神,帮助产生更好的项目结果。在这个过程中,产品所有者和scrum master扮演着重要的角色。
Scrum 成功的三个基本角色
三个突出的角色进行整个过程:Scrum master、产品所有者和团队。
图片来源: scrum.org/作者Jasper Alblas
Scrum 主人
scrum master负责定义目标并保持Scrum 。他们作为教练或向导对他们的团队开展工作。另一个角色的责任是帮助整个团队管理事情,保持项目从冲刺计划到结束的顺利进行。他还为目标的执行安排所需的资源,并保持高昂的精神。
产品负责人
产品负责人处理执行部分。这个角色也是项目利益相关者的代表,并负责确定产品积压的优先级,以获得更好的结果和最大化的投资回报率。作为一个产品负责人,他必须是业务活动的专家,并且清楚要实现的目标。
Scrum 团队
Scrum团队是这个模型中的执行重点。他们是执行指令和产生结果的人。通常情况下,scrum团队是由5-7个人组成的小组工作。理想的情况是,scrum团队必须在同一地点工作,并有良好的联系。
在这样一个小团队中,具有不同能力的人是scrum项目的一部分。他们互相帮助交叉培训以减少瓶颈。集体责任和个人灵活性使Scrum团队与众不同。
Scrum,Kanban, 和Agile
Scrum,Kanban, 和Agile 经常被当作可互换的术语。但事实并非如此。Scrum 框架和Kanban 是依靠敏捷软件开发的Agile 框架,其中过程中的灵活性是实现最终目标的主要动机。
这两个框架,即Kanban 和Scrum ,都相信将主要任务划分为较小的活动,并包括团队成员以产生最佳结果。对于Scrum ,它是通过冲刺计划完成的,而在Kanban ,输入阶段有助于这样做。然而,在Scrum ,较小的冲刺是敏捷框架的一部分。但在Kanban ,没有这样的事情,它是一个持续的过程。
你为什么要选择Scrum ?
如果你对考虑用Scrum 方法来进行你的项目持怀疑态度,这里有几个理由你应该选择它。Scrum 项目很容易理解。一旦理解了,角色(scrum master, product owner, development team)、工件和事件可以很容易地应用到scrum项目中。
此外,每个团队成员的角色和要完成的任务都很清楚,确保了更好的合作和目标的明确性。透明度和集体所有权都是可以通过Scrum 过程实现的好处。
此外,冲刺阶段是小时间的活动,有明确的可交付成果。它有助于保持整个开发团队的积极性,以继续工作并实现更大的目标。 请注意,在你获得这些好处之前,有一个初步的学习曲线,但长期的好处比你必须花时间来掌握scrum过程要大得多。
总结
Scrum 原则可以帮助软件开发过程。通常情况下,开发团队会找到在线应用程序,提供创建自定义Scrum流程的设施。 就是这样一个工具,它可以帮助软件开发,AppMaster 大大减少上市时间以及开发成本和维护成本。