健康的Product Backlog就像一个健康的人那样:整洁有序、组织合理、公开透明。
一个按照优先级顺序排好的敏捷Backlog不仅能够简化发版和迭代计划,还能够对团队计划去做的所有工作进行细致规划——包括客户根本不会关注的内部工作。尤其是当利益相关者和其他团队对团队提出额外的工作需求时,Backlog能够帮助他们设定期望指标,同时还能够使工程时间具备价值,产出实际可交付的成果。

什么是Product Backlog?

Product Backlog是开发团队根据路线图及需求制定的按优先级排列的列表。其中,最重要的项目显示在Product Backlog的顶部,确保团队知道这就是要先交付的成果。因此,开发团队不是按照Product Owner规定的节奏开展工作,Product Owner也不会是开发团队完成工作的驱动者。相反,开发团队根据Product Backlog中的顺序推进工作,通过看板的持续改善或scrum的迭代来完成这些项目。

专家提示:将所有工作内容存储在同一个任务跟踪器中——不要使用多个系统来管理bug、需求和研发工作项。如果是要求开发团队完成的工作,就请将其保存在单个列表中。

以两个“R”为出发点

团队的路线图和需求为Product Backlog奠定了基础。路线图计划可以拆分为几个史诗(epic),每个史诗(epic)都包含几个需求和用户故事。 让我们来看看一个名为Teams in Space的虚构产品的路线图。

由于Teams in Space网站是路线图中的第一个任务,我们希望将这一任务分解为下面三个不同的开发史诗(epic)(这里以绿色、蓝色和蓝绿色显示)和每个史诗(epic)中各自不同的用户故事。

然后,Product Owner将每个用户故事的需求,整合到开发团队的单个列表中。Product Owner可以先提供单个完整的史诗(epic)(左图)。或者,如果预订折扣航班的测试对这个系统来说更为重要时,就需要来自几个史诗的用户故事(右图)。 下面是两个例子:

哪些因素可能会影响Product Owner的优先级排序?

  • 客户优先权
  • 紧急反馈
  • 相对实施难度
  • 工作项之间的关联关系(如:如果先做完A,B会更容易)

虽然确定Product Backlog的优先级顺序是Product Owner的任务,但绝对不应该在封闭的情况下完成。实际上Product Owner会通过收集来自客户、设计人员和开发团队的意见和反馈,来优化每个人的工作量和所需交付的产品。

确保 Backlog处于健康状态

Product Backlog一旦创建,非常重要的一点就是要通过定期维护来确保它能够与开发项目的整体节奏保持一致。Product Owner在每次迭代规划会议前,都应该评审backlog,以确保优先级顺序正确无误,且上一次迭代的反馈已经被整合到本次迭代中。敏捷圈通常将Product Backlog的定期审查称为“Backlog修饰”。
如果Product Backlog的规模变大,Product Owner就需要按照短期和长期项目,将backlog进行分组。贴标签前,短期项目需要完善细节。这需要与设计和研发一起协作制定完整的用户故事、估算开发时间。较长期的项目不需要特别清晰具体,但最好能让开发团队做一个粗略的估计来判断项目的优先级。这里的关键词是“粗略”——也就是说团队完全理解并开始着手做长期项目后,所有的估算都有可能发生改变。
Backlog作为连接Product Owner和开发团队之间的桥梁。如果是由于客户反馈、精炼估算和新需求出现等原因,Product Owner可以随时重新变更backlog的优先级。但是,一旦进入开发阶段,尽量将更改的机率降到最低,因为这样会打乱开发团队的节奏并影响工作的聚焦点、流程和士气。

专家提示:一旦backlog超出了团队的长期能力,可以尝试关闭团队几乎无法达成的任务。在团队的任务跟踪器中,用特别的表述来给这些任务做标记,如“超出范围”等,以便用于稍后研究。

需要注意的非常规现象:

  • Product Owner在项目一开始就对backlog进行了优先级排序,并且在开发人员和利益相关者提供反馈意见时也没有对其进行调整。
  • 开发团队将backlog中的事项限制为面向客户的项目。
  • Backlog存储在本地,不经常共享,导致感兴趣的各方无法获取更新后的内容。

Product Backlog如何让团队保持敏捷?

经验丰富的Product Owner会严格修改其项目的Product Backlog,使其成为可靠且可共享的工作大纲。
Backlog鼓励能够让项目变得更健康的讨论和决策——因为并不是每项任务都可以排在第一位。
利益相关者可以质疑既定优先级,这是一个很好的做法。围绕优先事项进行讨论能够确保每个人的优先事项保持一致。这些讨论可以促进团队优先级一致性的文化,确保项目中的每个成员都有优先级一致的思维。
Product Backlog同时也是迭代规划的基础。所有工作项都应包含在backlog中:用户故事、bug、设计变更、技术债、用户提出的需求、回顾中的操作项等。这样做可以确保每个迭代的每个人的工作项都包含在整个讨论中。然后,在完全知晓需要完成的所有事项的情况下,团队成员可以在迭代开始前与Product Owner一起权衡此次迭代的工作项。

专家提示:Product Owner决定了backlog中工作项的优先级,而开发团队则通过backlog来决定团队开发速度。而对于希望将工作“推”给团队的新Product Owner而言,这可能是一种难以平衡的关系。

Worktile官网: https://worktile.com/

内容整理:Worktile
文章首发于「Worktile官方博客」,转载请注明来源。

Product Backlog:终极任务清单相关推荐

  1. 【原创】Scrum中Product Backlog和Sprint Backlog的区别

      Product Backlog Sprint Backlog 详细度 比较详细 非常详细 估算单位 Story Points 小时 文档归属 Product Owner 开发团队 更新频率 一次/ ...

  2. 产品Backlog(Product Backlog)是什么?

    产品backlog由所有的功能特性,包括业务功能,非业务功能(技术.架构和工程实践相关),提升点以及缺陷的修复等组成.这些内容也是将来产品版本发布的主要内容. 一个完整的backlog是一个的蓝图,可 ...

  3. 什么是产品Backlog(Product Backlog)?

    产品backlog由所有的功能特性,包括业务功能,非业务功能(技术.架构和工程实践相关),提升点以及缺陷的修复等组成.这些内容也是将来产品版本发布的主要内容. 一个完整的backlog是一个的蓝图,可 ...

  4. Backlog和冲刺结果以及产品Demo市场调研

    Backlog和第一阶段冲刺结果以及产品Demo 博客停更了一段时间,但是我们团队没有闲着,现在一次性汇报团队工作进度,Backlog和第一阶段冲刺结果以及产品Demo. 在一段时间的分工合作以及调整 ...

  5. 微软Team Foundation Service 的Scrum模板中的Feature和Backlog Items 的区别【转载】

    Features help us plan work better in Team Foundation Service Scrum process [原文:http://www.nsilverbul ...

  6. Scrum 学习篇 -- Backlog之浅析 (三)

    介绍了上面三个Backlog的重要性,大家应该能感觉到在敏捷中,Backlog的确是非常重要的一个概念.下面就来具体介绍一下Backlog的几个分类: 由于不同的公司.不同的专家对Backlog的分类 ...

  7. 【敏捷CSM认证】产品负责人(Product Owner)

    [敏捷CSM认证]产品负责人(Product Owner) Product Owner 负责将Scrum Team 的工作所产生的产品价值最大化. 如何做到这一点可能在组织.Scrum Team 和个 ...

  8. [敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum

    [敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum 1,Scrum概述 上篇中提到敏捷开发有两种主流的方法,一个是XP,另一个是Scrum,本篇简要介绍Scrum方法.Scrum是 ...

  9. scrum项目管理_Scrum,用于初创企业(或针对该项目的任何项目)

    scrum项目管理 Scrum is a lightweight framework designed to help small, close-knit teams of people develo ...

最新文章

  1. Win10系统下软件UI显示不完整解决方案
  2. Struts2拦截器简单示例
  3. python爬虫基础知识点_入门Python爬虫知识点梳理
  4. sql基线建立-知识准备
  5. JDBC查询Oracle全部表名称,如何使用JDBC API从Oracle数据库中的现有表中检索记录?...
  6. 【原创】uC/OS 中LES BX,DWORD PTR DS:_OSTCBCur的作用及原理
  7. pc模式 华为mate30_华为Mate30国内发布,这篇可能是全网最全干货贴
  8. 持有1000枚比特币及以上的地址数量创历史新高
  9. c语言不定参数的使用,C语言中不定参数的实现
  10. 第二季-专题1-工欲善其事-必先利其器
  11. 检查Mysql引擎的方法
  12. python二级通过率_计算机二级考试通过率太低?别担心,是真正备考的人变少了...
  13. retina屏 适配问题
  14. UNIX时间及相关概念
  15. PTA:运算符重载(最简分数,c++)
  16. python办公自动化 使用openpyxl合并excel表格
  17. 在C#中使用OpenCV(使用OpenCVSharp)
  18. 已知两点坐标如何快速增加其他坐标_天文坐标系分类
  19. 关于在校大学生的Edu教育邮箱能够薅到的羊毛
  20. C#,数值计算,基础函数——任意位数π的数值算法源程序与数据可视化

热门文章

  1. java 打包目录_Java打包文件目录问 zip文件
  2. BZOJ 1592. Making the Grade(思维,数据结构优化DP,以及三个拓展问题)[Usaco2008 Feb]【BZOJ计划】
  3. 2019 ICPC全国邀请赛(西安)I. Cracking Password(序列检验,BSGS,细节题)
  4. Codeforces Round #703 (Div. 2)(A ~ F)超高质量题解【每日亿题2 / 19】
  5. P1972 [SDOI2009]HH的项链(离线树状数组)
  6. 关于reference to ‘XXXX’ is ambiguous的解决办法
  7. 四川大学java试题_四川大学2013年计算机(软件)学院Java语言程序设计期末考试试题B卷...
  8. matlab disp fprinr,matlab如何使输出结果更美观(symdisp函数——pretty函数升级版)
  9. 在java中实现滚动文字,通过线程实现文字在屏幕上不停滚动,为什么文字不显示啊,求指点...
  10. 不若鸿蒙的意思,任正非说鸿蒙媲美iOS不用三年,华为若出鸿蒙手机你会买吗?...