对于进入计算机科学与信息技术领域的学生来说,理解软件开发框架的重要性不亚于掌握一门编程语言。在众多可用的方法论中,Scrum 是被最广泛采用的敏捷框架。本指南全面解析了 Scrum 指南——定义游戏规则的官方文件。无论你是正在构建毕业设计项目,还是为进入行业岗位做准备,掌握这些概念都至关重要。
Scrum 不仅仅是一系列会议或任务清单。它是一种基于经验的过程控制框架。这意味着知识来源于实践,并基于观察结果做出决策。它专注于逐步交付价值,并快速适应变化。本文解析了当前 Scrum 指南中定义的核心组成部分、角色、事件和工件。

Scrum 的核心价值观 🤝
任何 Scrum 团队的基础都在于其价值观。这五项价值观指导团队成员的行为,促进信任与协作的文化。若缺乏这些价值观,Scrum 的机制将失去效力。
- 承诺: 团队成员承诺实现自己设定的目标,并保证工作的质量。他们对冲刺的结果负责。
- 专注: 团队专注于冲刺期间的工作和 Scrum 团队的目标。尽量减少干扰,以保持工作流的顺畅。
- 开放: Scrum 团队及其利益相关者对工作和挑战保持开放。透明是解决问题的关键。
- 尊重: 团队成员彼此尊重为有能力且独立的个体。他们珍视所有参与者的贡献。
- 勇气: 团队成员有勇气去做正确的事,并勇于面对棘手的问题。这包括敢于指出问题。
Scrum 团队 👥
Scrum 团队是由具备创建产品增量所需全部技能的少数人员组成的。它是自我管理的,意味着团队内部自行决定谁在何时何地完成何种工作。团队中不存在子团队或层级结构。
1. 产品负责人 📋
产品负责人对最大化 Scrum 团队工作成果所产生产品的价值负责。虽然他们常被视为客户的声音,但其职责还延伸至有效管理产品待办事项列表。
- 制定并明确传达产品目标。
- 对产品待办事项列表中的各项内容进行排序,以最好地实现目标和使命。
- 优化 Scrum 团队所执行工作的价值。
- 确保产品待办事项列表可见、透明且被充分理解。
2. Scrum 主管 🛡️
Scrum 主管对 Scrum 团队的有效性负责。他们以多种方式为 Scrum 团队服务,主要是通过引导团队达到高水平的有效性。他们并非传统意义上的项目经理,而是服务型领导者。
- 指导团队进行自我管理和跨职能协作。
- 消除阻碍团队进展的障碍。
- 确保所有 Scrum 事件如期举行,并保持积极、高效,且在规定时间内完成。
- 帮助组织理解并实施 Scrum 和敏捷方法。
3. 开发人员 👨💻👩💻
在《Scrum指南》中,“开发人员”这一术语被用来涵盖所有创建产品增量的角色(程序员、测试人员、设计师等)。他们负责制定冲刺计划和冲刺待办事项列表。
- 他们制定冲刺计划和冲刺待办事项列表。
- 他们负责保持工作的质量标准。
- 他们每天都会根据冲刺目标调整计划。
- 他们创建可使用的功能增量。
Scrum事件 📅
Scrum事件旨在创造规律性,并尽量减少对Scrum未定义会议的需求。所有事件都有时间限制,以确保效率。下表概述了核心事件及其具体目的。
| 事件 | 时间限制 | 目的 | 参与者 |
|---|---|---|---|
| 冲刺 | 一个月或更短 | 所有其他事件的容器。一个固定时长的时间段,在此期间创建出一个“已完成”、可用且可能可发布的产品增量。 | Scrum团队 |
| 冲刺计划 | 一个月冲刺最多8小时 | 明确冲刺期间可以交付的内容以及如何完成这项工作。 | Scrum团队 |
| 每日站会 | 15分钟 | 检查向冲刺目标进展的情况,并根据需要调整冲刺待办事项列表。 | 开发人员 |
| 冲刺评审 | 一个月冲刺最多4小时 | 检查增量,并在需要时调整产品待办事项列表。 | Scrum团队 + 利益相关者 |
| 冲刺回顾 | 一个月冲刺最多3小时 | 计划提高质量和效率的方法。 | Scrum团队 |
事件的详细分解
冲刺计划
此事件标志着冲刺的开始。整个Scrum团队协作回答两个关键问题:“在即将到来的冲刺所产生的增量中,可以交付什么?”以及“所选工作将如何完成?”输出结果是冲刺待办事项列表。
每日站会
通常被称为每日站会,这是开发人员的15分钟会议。它不是给经理的进度报告,而是一次计划会议。开发人员讨论向冲刺目标迈进的进展,并识别障碍。每天在相同的时间和地点举行,以降低复杂性。
冲刺评审
冲刺评审是Scrum团队和利益相关者检查冲刺成果的机会。如果产品目标已发生变化,产品负责人可以提出预期的产品目标。重点在于产品本身,而非流程。利益相关者提供反馈,可能引发产品待办事项列表的调整。
冲刺回顾
此事件发生在冲刺评审之后、下一次冲刺计划之前。重点在于流程,而非产品。Scrum团队检视上一次冲刺在个人、互动、流程、工具以及其完成定义方面的表现。他们识别出哪些方面做得好,哪些方面需要改进。
Scrum工件 📦
工件代表工作或价值。它们的设计旨在最大化关键信息的透明度。每个工件都包含一项承诺,以确保其提供有助于提升理解和效率的信息。
1. 产品待办事项列表 📝
产品待办事项列表是产品中所有已知需求的有序列表。它是对产品进行任何变更的唯一需求来源。它是动态的,永远不会完成。
- 排序: 由产品负责人对项目进行排序,以优化价值、风险和必要性。
- 透明度: 任何人都可以查看待办事项列表及其状态。
- 估算: 位于顶部的项目更清晰,可以进行估算。
2. 冲刺待办事项列表 🏗️
冲刺待办事项列表由冲刺目标、为本次冲刺选定的产品待办事项列表项目,以及交付增量的计划组成。这是由开发人员创建的计划。
- 所有权: 它属于开发人员。
- 适应性: 在冲刺过程中,随着了解的深入,它会不断更新。
- 承诺: 冲刺目标是冲刺待办事项列表的承诺。
3. 增量 🚀
增量是迈向产品目标的具体踏脚石。每个增量都是对之前所有增量的累加。增量必须是可用的,这意味着它必须根据“完成的定义”达到“完成”状态。
- 可用性: 必须处于可用状态。
- 完成的定义: 必须满足团队设定的标准。
- 集成: 必须与其他所有增量集成。
完成的定义 ✅
完成的定义(DoD)是对增量在满足产品所需质量标准时所处状态的正式描述。如果产品待办事项未达到完成的定义,就不能发布或在冲刺评审中展示。
对于IT专业的学生来说,制定完成的定义是一项关键练习。它迫使团队就‘完成’的含义达成一致。仅仅是编写了代码吗?是否经过测试?是否已记录?是否经过审查?完成的定义确保团队不会积累技术债务。
- 代码需经过同行评审。
- 单元测试已编写并通过。
- 集成测试已执行。
- 文档已更新。
- 安全检查已通过。
如果某项未达到完成的定义,必须将其返回产品待办事项列表并重新排序优先级。它不能被计入冲刺目标的完成。
为更大团队扩展Scrum 📈
尽管核心Scrum指南聚焦于单一团队,但现实中的IT项目通常需要多个团队共同开发同一产品。在扩展时,核心价值观和原则保持不变,但结构会发生变化。
- 多个Scrum团队: 所有团队都在同一产品待办事项列表上工作。
- 共享的产品目标: 所有团队都朝着共同的目标努力。
- 集成: 一个团队创建的增量必须与其他团队的增量集成。
- 沟通: 必须建立沟通渠道以防止形成信息孤岛。
对于负责毕业设计项目的学生来说,当项目规模过大而无法由一个小组完成时,这一点尤为重要。你可能需要与其他作为依赖关系的小组进行协调。
在学术项目中应用Scrum 🎓
许多计算机科学专业的学生将他们的最终项目视为线性的瀑布流程。他们先设计全部内容,再编写全部代码,最后进行全部测试。这常常导致过度疲劳和质量低下。应用Scrum原则可以显著改善结果。
学生可操作的步骤
- 创建待办事项列表: 写下你认为需要的每一个功能。对它们进行优先级排序。从最关键的功能开始。
- 限定冲刺周期: 设定两周的周期。承诺在该时间内完成你能完成的工作。
- 举行每日站会: 花15分钟讨论进展。不要只谈论代码;也要谈论阻碍事项。
- 检查并调整: 在每个周期结束时,回顾你所构建的内容。它是否有效?如果无效,就为下一个周期调整计划。
- 定义完成标准: 就你的代码“完成”意味着什么达成一致。是否经过测试?是否已部署?不要跳过测试阶段。
对职业发展的益处
在学习期间掌握Scrum能让你在就业市场上具有显著优势。大多数科技公司都采用敏捷方法。理解相关术语和思维方式,向雇主表明你能够快速融入他们的团队。
- 协作: 你学会在跨职能团队中工作。
- 沟通: 你练习在不被过度管理的情况下汇报进展。
- 适应能力: 你学会在不慌乱的情况下应对需求变化。
- 质量关注: 你理解到发布代码并不足够;它必须具有价值且可用。
常见误解 ❌
关于Scrum存在一些误解,可能会让学生困惑。澄清这些误解对于确保正确实施至关重要。
- 误解:Scrum是一种方法论。 事实:它是一种框架。它提供结构,但允许你自行填充细节。
- 误解:你必须使用特定的软件工具。 事实:Scrum可以用便利贴或白板来管理。工具是可选的。
- 误解:Scrum Master是老板。 事实:他们是服务型领导者,负责促进工作,而非管理。
- 误解:如果你很忙,可以跳过活动。 事实:活动提供了检查与调整的节点。跳过它们会破坏反馈循环。
- 误解:所有工作都必须完成。事实:在Scrum中,与其等到最后交付一个质量低下的完整版本,不如尽早交付一个部分但高质量的增量。
结论与下一步行动 🚀
理解Scrum指南是成为高效软件专业人士的第一步。它提供了一个结构,帮助团队应对复杂性并持续交付价值。对于计算机科学和信息技术专业的学生来说,在学术环境中应用这些概念,能够培养出行业成功所需的肌肉记忆。
首先,从查阅官方的Scrum指南文档开始。它内容简短、精炼,由Scrum的创建者撰写。随着理解的加深,定期阅读它。尝试在当前项目中实施一两个实践方法,比如从每日站会或完成的定义开始。
请记住,Scrum并不是万能的灵丹妙药。它需要所有参与者的承诺,需要敢于承认问题出现的勇气。但当正确实施时,它能创造出一个让创新和质量蓬勃发展的环境。随着职业生涯的推进,你可能会遇到各种Scrum的变体。理解其核心规则将帮助你适应任何变体。
持续学习,持续实践。软件开发的旅程漫长,而Scrum是前方道路上的一份宝贵地图。












