sprint 的日常工作的目标是以可以交付给客户或用户的形式为产品创建可交付的产品增量。
在单个 sprint 的上下文中,产品增量或可交付增量意味着工作产品已根据完成的项目定义进行开发、集成、测试和记录,并被视为准备发布。
开发团队可能会也可能不会在冲刺结束时发布该产品——发布时间取决于发布计划。该项目可能需要多次冲刺,然后产品才能包含证明市场发布合理所需的最低适销产品 (MMP) 集。
为了创建可交付的功能,开发团队和产品负责人参与了三项主要活动:
阐述
在敏捷项目中,细化是确定产品特性细节的过程。每当开发团队处理一个新的用户故事时,细化确保任何关于用户故事的未回答问题都得到解答,以便开发过程可以继续进行。
产品负责人与开发团队一起详细阐述用户故事,但开发团队应该对设计决策拥有最终决定权。如果开发团队需要全天进一步澄清需求,产品负责人应该可以咨询。
发展
在产品开发过程中,大部分活动自然落到了开发团队的肩上。产品负责人继续根据需要与开发团队合作,以提供说明并批准开发的功能。在 Sprint 期间,团队成员:
- 将开发团队成员配对以完成任务。这样做可以提高工作质量并鼓励技能共享。
- 遵循开发团队商定的设计标准。如果您出于某种原因无法遵循它们,请重新审视这些标准并加以改进。
- 通过设置自动化测试开始开发。您可以在下一节和第 15 章中找到有关自动化测试的更多信息。如果在开发过程中出现了新的、不错的特性,请将它们添加到产品 backlog 中。避免编写 sprint 目标之外的新功能。
- 集成白天编码的更改,一次一组。测试 100% 的正确性。每天至少集成一次更改;有些团队一天要整合很多次。进行代码审查以确保代码符合开发标准。确定需要修改的领域。将修订添加为 sprint backlog 中的任务。
- 在工作时创建技术文档。不要等到 sprint 结束,或者更糟糕的是,在 sprint 结束之前发布。
验证
验证 sprint 中完成的工作包括三个部分:自动化测试、同行评审和产品所有者评审。团队可以进行:
自动化测试
自动化测试意味着使用计算机程序为您完成大部分代码测试。通过自动化测试,开发团队可以快速开发和测试代码,这对敏捷项目来说是一个很大的好处。通常,敏捷项目团队在白天编写代码,让测试在一夜之间运行。早上,项目团队可以查看测试程序生成的缺陷报告,在每日 Scrum 中报告任何问题,并在当天立即纠正这些问题。
- 自动化测试可以包括以下内容: 单元测试:测试源代码的最小部分——组件级别
- 系统测试:用系统的其余部分测试代码
- 静态测试:根据开发团队同意的规则和最佳实践验证产品代码是否符合标准
同行评审
同行评审只是意味着开发团队成员互相评审彼此的代码。
产品负责人评论
开发和测试用户故事后,开发团队将故事移至任务板上的“接受”列。然后,产品所有者根据用户故事的接受标准审查功能并验证它是否满足用户故事的目标。产品负责人每天都会验证用户故事。
概括
开发团队通过更新 sprint backlog 来报告任务进度,其中包含哪些任务已完成,以及在新任务开始时还需要完成多少工作(以小时为单位)。根据 Scrum 团队使用的软件,sprint backlog 数据也可能会自动更新 sprint 燃尽图。
其他 Scrum 文章