Scrum

17 Mar 2025 | 4 分钟阅读

我们已经研究了敏捷方法,其中敏捷是一组应该遵循以开发软件开发项目的信念。基于这些信念或价值观,已经开发了许多模型,其中一个模型是 Scrum

在深入研究 Scrum 之前,您应该了解一些基本术语的含义。

  • Scrum: Scrum 是一种敏捷框架,可以帮助您组织、迭代并继续您正在进行的项目。在 Scrum 中,产品是在一系列迭代中构建的,这些迭代称为冲刺或部分。
  • 冲刺 (Sprint): 冲刺是一个有时限的时间段,Scrum 团队需要在其中完成设定的工作量。每个冲刺都有指定的时间线,即 2 周到 1 个月。Scrum 团队在冲刺计划会议期间同意此时间线。
  • Scrum Master: Scrum Master 被定义为 Scrum 开发团队的协调人或仆人式领导。Scrum Master 必须确保遵循 Scrum 原则。
  • Scrum 开发团队: Scrum 开发团队是个人成员的集合,包括开发人员、质量保证人员和 Scrum Master。它决定并提供工作量估算。建议的 Scrum 团队规模在 5 到 9 名成员之间。

Scrum 如何运作

Scrum
Scrum

在瀑布模型中,我们已经了解到首先完成所有需求,然后完成整个设计,然后完成整个开发,然后完成整个测试和部署。此模型采用产品的完整生命周期,然后只有产品才能供客户端查看。而 Scrum 表示考虑软件的一小部分,然后计划、构建、测试并最终审查它。已开发的这个小模块将展示给客户。例如,我们需要开发电子商务网站,它可以分解为许多冲刺或模块,例如登录页面、支付页面、购物车页面等。然后,每个模块都是单独开发的,并同时展示给客户。因此,我们可以说在每个冲刺完成后,产品都会交付给客户端,虽然不是完整的产品,而是部分功能。

Scrum 的工件

在 Scrum 中准备的文档和内容被称为工件。

以下是 Scrum 的工件

Scrum
  • 产品待办事项
    产品待办列表是需要在项目中完成的活动的集合。当我们想要开发软件时,我们需要执行“n”个活动。例如,我们需要开发电子商务网站,然后我们必须执行“n”个活动,例如我们需要创建登录页面、支付系统、购物车系统等,而开发软件所需的这“n”个活动被称为产品待办列表。
  • Sprint 待办列表
    我们知道在 Scrum 中,我们将 Scrum 分解为“n”个冲刺,并且冲刺的目标是带来软件的一小部分功能并将其交付给客户端进行演示。在产品待办列表中,我们必须完成开发软件所需的所有活动,而在冲刺待办列表中,一小组产品待办列表活动在该冲刺内执行。“n”个冲刺待办列表等于 1 个产品待办列表。
  • 燃尽图
    燃尽图是冲刺的结果,它显示了冲刺的进度。在每个冲刺之后,我们需要检查每个冲刺的进度。燃尽图告诉您在冲刺中的工作方式。在燃尽图中,图表从某个时间开始,即活动开始的时间,并且在冲刺结束时,图表到达零,即活动结束的时间。它通常是从上到下倾斜的线。

Scrum 角色

有三个 Scrum 角色

  • 产品负责人
    有一个客户想要开发他的软件,所以他联系了一家可以开发他的软件的公司。公司做什么?公司分配一个角色,即产品负责人。产品负责人是与客户沟通并了解他们需求的人。产品负责人是公司软件开发的负责人。
  • Scrum Master
    在冲刺期间,敏捷方法认为团队应该每天聚在一起一次。当团队遵循 Scrum 时,意味着他们每天进行 10 到 15 分钟的会议。此会议称为 Scrum 会议。Scrum Master 是处理 Scrum 会议的人。
  • 团队
    团队由从事项目的人员组成。它可以是开发人员、测试人员或设计人员。当我们谈论敏捷或 Scrum 时,我们谈论的是团队,我们不谈论作为个体的开发人员或测试人员。敏捷方法认为,在需要时,开发人员可以作为测试人员工作,或者测试人员可以作为开发人员工作。

Scrum 仪式

让我们看一下以下 Scrum 仪式

  • 冲刺计划
    Scrum 由许多冲刺组成,这些冲刺具有一组不同的模块,用于交付软件。在开始冲刺计划之前,我们有一个称为冲刺计划的会议,在冲刺计划中,我们讨论我们将在冲刺中做什么。在冲刺计划中,产品负责人讨论产品的每个功能,并估算开发团队所涉及的工作量。
  • 每日 Scrum
    在 Scrum 中,Scrum Master 每天进行 15 分钟的会议,Scrum Master 是管理会议的人。会议由 Scrum Master、开发人员、测试人员、设计人员、产品负责人、客户组成,其中产品负责人和客户是可选的。
  • 冲刺评审
    在每个冲刺完成后,会与客户进行会议,在会议中,会将产品展示给客户进行演示,并且团队讨论他们在项目中添加的功能。