Coursera 笔记

Module 03 · Agile & Scrum敏捷与 Scrum

Building the Product Backlog产品待办事项列表(Product Backlog)管理与创建

Coursera ↗

学习目标

观看本视频后,你将能够:

  • 定义产品待办事项列表(Product Backlog)
  • 描述如何组建一个产品待办事项列表
  • 将需求转换为用户故事(User Stories)

什么是产品待办事项列表?

产品待办事项列表(Product Backlog) 是所有未实现的用户故事的集合。

  • 这些故事尚未进入Sprint,它们处于等待开发的状态。
  • 通常,产品待办事项列表按优先级进行排序,并且排序越靠前的故事越具体,排在后面的故事可能较为模糊,等到后期开发时再进一步细化。

待办事项排序与细化

  • 待办事项列表中的故事应该按照业务重要性进行优先排序。
  • 排在前面的故事需要更加详细,准备好进入下一个Sprint,而排在后面的故事则可以保持模糊,稍后再添加更多细节。

如何创建产品待办事项列表?

我们通过一个例子来说明如何构建一个产品待办事项列表。假设我们要构建一个计数服务,以下是我们的一些需求:

需求1计数服务

  • 我们需要一个服务,可以给计数器命名,每次增加计数(如1、2、3、4...),然后返回当前计数(例如返回4)。
  • 这是一个简单的计数服务,用于跟踪页面访问次数或其他用途。

需求2支持多个计数器

  • 我们的系统需要支持多个计数器,以便同时跟踪多个不同的计数。

需求3持久化计数器数据

  • 计数器必须在系统重启后依然存在,不能只是内存中的数据,需要某种持久化机制,比如数据库。

需求4重置计数器功能

  • 系统需要支持重置计数器,使其回到零,以便重新开始计数。

创建用户故事

根据这些需求,我们将它们转化为用户故事。
用户故事的模板是:“作为某个角色,我需要某个功能,以便我能获得某种利益。”

用户故事1:需要计数服务

  • 角色:用户
  • 需求:需要一个计数器服务
  • 价值:这样用户可以跟踪某件事的完成次数
  • 这个故事已转化为用户故事并放入新问题列中。

用户故事2:支持多个计数器

  • 角色:用户
  • 需求:能够拥有多个计数器
  • 价值:这样用户可以同时追踪多个计数
  • 这个故事也放入了新问题列中。

用户故事3:持久化计数器数据

  • 角色:服务提供者
  • 需求:服务必须在重启后保留计数器数据
  • 价值:用户在重启服务后不会丢失计数信息
  • 该故事已添加到新问题列中。

用户故事4:重置计数器功能

  • 角色:系统管理员
  • 需求:能够重置计数器
  • 价值:管理员可以重新开始计数
  • 此用户故事同样放入新问题列中。

如何优先排序待办事项列表?

当所有故事都被添加到新问题列后,接下来需要根据优先级进行排序,决定哪些故事需要进入产品待办事项列表。

优先排序步骤

  1. 计数服务:
    这个功能非常基础,是实现整个系统的核心,应该放到产品待办事项列表的顶部。
  2. 多个计数器支持:
    这是后续的功能,可以稍后再实现,不是当务之急,所以暂时不放到产品待办事项列表的前面。
  3. 持久化计数器:
    在基础功能完成后,增加持久化功能很重要,应该放在产品待办事项列表的前面。
  4. 重置计数器:
    这个功能虽然重要,但在持久化实现之后再处理,也可以放到待办事项列表后面。

使用看板管理产品待办事项列表

在管理产品待办事项时,可以使用**看板(Kanban)**工具来帮助我们可视化整个开发流程。
看板的列包括:

  • 新问题(New Issues)
  • 冰箱(Icebox)
  • 产品待办事项列表(Product Backlog)
  • Sprint待办事项列表(Sprint Backlog)
  • 进行中(In Progress)
  • 质量检查(Q&A)
  • 评审/质量检查(Review/Q&A)
  • 完成(Done)

总结

在本视频中,你学习到了:

  • 产品待办事项列表是所有未实现的用户故事的排序列表。
  • 列表中排在前面的故事需要更加详细,以便准备进入下一轮开发。
  • 使用**"作为(As a)、我需要(I need)、所以我能(So that)"模板,确保每个用户故事都明确了受益角色和业务价值**。
  • 根据需求的优先级和开发时序,合理地对待办事项进行排序和细化。