Scrum 之 product Backlog

转载 2012年03月27日 08:42:56

Scrum 之 product Backlog

转载自周金根 [ http://zhoujg.cnblogs.com/ ]

Scrum的基本概念其实并不复杂,但是想做好并不容易,大家都知道product backlog的重要性,但是我们如何制定和展现它,如何评定优先级,如何进行初始评估?下面我将介绍和product backlog相关的一些问题。

Scrum之 流程和术语介绍了流程,这里主要介绍第一个最重要的工件 Product Backlog。它是Scrum的核心,也是一切的起源。它是由Product Owner负责制定的一个按照重要性的级别排序了的故事列表。

 


  • 什么是Prodcut Backlog

 backlog英文意思为“积压的工作”。 product backlog是一个具有优先级的需求列表, 并对每个需求进行了粗略的估算。在Scrum中表示可以预知的所有任务,包括未细化的产品功能要求、Bugs、缺陷、用户提出的改进、具竞争力的功能及技术升级等,按优先级定义出来,这些任务可能不是完整的,甚至可能随时会更改或添加。Prodcut Backlog永远处于不完整状态,它随着产品及其使用环境的变化而变化,它是动态的,管理层不断对之做出改变,确定产品需求,保证产品适用性、实用性和竞争性。

 

 

  1. 在列表上层的故事首先被团队完成
  2. Product Backlog不是制定一次就完了的,它是动态的,需要持续的被修订,可能会出现故事的增加、删除和修改、合并或者拆分
  3. 任何一个Backlog的目标都是:它应该足够短、级别足够高,无特殊情况不需要修改。如果Backlog改变了,那么我认为你应该假设你的 Backlog错了,而不是需求变更了。变更需求通常意味着Backlog太长或者太详细,比如把复杂算法和逻辑也写入了backlog中了,要不就是写 的太含糊不清了,需要花费太多的时间猜测它究竟讲的是什么。

这里有一个别人做的,大家可以参考一下 product sprint示例

Make the Product Backlog DEEP

  • Prodcut Backlog有什么用

 

产品backlog根据用户价值罗列所有即将在产品中开发的功能,通过简洁的展示需要实现的功能,我们可以对项目进行规模上的估算,确定发布计划和迭代计划。产品backlog可以帮助我们对将要做的事情有个整体的认识,以及可以知道我们现在的状态。如果没有backlog,我们将不知道现在和将来产品做成什么样子,由于对产品目标的不明确,当然也不知道什么时候可以发布产品,或者发布的产品能给客户带来什么价值。


  • 谁提供product backlog的需求

产品负责人与客户最近,他最清楚产品应该做什么样子,所以product backlog应该由Product Owner来制定。里面的需求由产品负责人或者客户制定,有时候Team里的需求分析人员可以和产品负责人或客户一起定义需求。制定后,由Scrum master和Team协助产品负责人修订并进行初始评估,里面的需求在sprint计划会议将进行更进一步的讨论。

  • 什么时候会修改product backlog

 

如果一个列表太长或者内容陈旧,product backlog的浪费远大于价值本身,所以我们必须不断的维护产品backlog。产品backlog由产品负责人提供,与Team进行规模估算时,可能会拆分合并或者添加删除故事,初始估计也由Team进行评估提供估计值。产品所有者通常会向开发小组提出自己确定的优先级顺序,而小组也可能会请产品所有者根据他们对主题的评估对这个顺序作出少量调整。

  • 怎么写故事

 一般按照轻量级的故事来进行描述需求。用户故事是最基本的设计单元,它是从系统用户或者客户的角度出发对功能的一段简要描述。用户故事的形式很自由,没有什么强制性的语法。但是,按照大致符合这样一个形式来考虑 用户故事是比较有益的:“作为【用户的类型】,我希望可以【先这样做,然后那样做,就应该得到...的结果】以便【业务价值】。”以这样的模作为例子,可以得到一个用户故事说:“作为购书者,我希望可以根据ISBN来找到一本书,以便能更快的找到正确的书。”在做用户故事时,需要注意每个用户故事用的是用户的语言,它只描述一个功能(feature),而且每个用户故事的开发周期不要太长(1-5天)

 我们不需要一开始对所有的故事都进行详细的描述,但计划放在下一个sprint中的故事应该比较清楚。可以按照硝烟一书中的表格来写backlog的故事:


 

ID为一个唯一标识,确定后最好固定不变,在其他工作或者文档中想引用故事就使用这个ID来引用
Name2到10个字,通过简单的描述来说明故事,如果要很多字才能表达这个故事,那很有可能这个故事太大,或者不清楚
重要性 这个优先级决定了sprint选择的故事,优先级越高的越早实现
初始估算 这个由Team来根据故事描述内容来估算,产品负责人讲解完故事后,Team对不清楚的进行询问,大概了解后进行粗略估算。从估算的角度出发,故事不应该太短,但也不能太过于详细,不需要把具体的规则和算法写进去。
How do demo 从用户视角,从操作层面进行讲解这个故事如何通过软件来演示,也可以作为一个简单的测试用例了。重要性高的backlog条目都要填写”如何演示“。
Notes相关信息、解释说明和对其他资料的引用等,一般都非常简短。

有时我还会增加一个分类列来标识出故事的主题,通过主题来从更大视角来查看需求主要内容,后期也可以根据主题的优先级来初始确定故事的优先级。

INVEST in Good Stories, and SMART Tasks

  • 怎么评定优先级
  • 怎么进行初始评估

敏捷开发中,Product Backlog 是否足以实现需求管理?

敏捷方法指导团队将产品需求置于Product Backlog中管理,并按照优先级对每个产品需求进行必要的排列。在计划会(Planning Meeting)之前,由Product Owner从Produ...
  • superbence
  • superbence
  • 2013年01月11日 08:59
  • 6696

怎么用leangoo做需求管理及规划?(产品Backlog、用户故事)

传统的瀑布工作模式使用详细的需求说明书来表达需求,需求人员负责做需求调研,根据调研情况编制详细的需求说明书,进行需求评审,评审之后签字确认交给研发团队设计开发。在这样的环境下,需求文档是信息传递的主体...
  • leangoo
  • leangoo
  • 2016年07月13日 11:33
  • 1328

敏捷开发中的Scrum流程

以下部分转载自:http://developer.51cto.com/art/200907/136850.htm 任何人力流程都离不开人来执行,所以在讲解Scrum流程之前,有必要先把Scrum中...
  • duheaven
  • duheaven
  • 2013年12月10日 09:30
  • 1676

linux里的backlog详解

说起backlog, 都会想起socket编程中的listen backlog 参数,而这个backlog 是linux内核中处理的backlog么? int listen(int sockfd, ...
  • raintungli
  • raintungli
  • 2014年07月18日 19:00
  • 18872

backlog日志框架

以前用log4J,用的还算可以,但是程序员是以追求性能的这么一个职业,所以学习了下logback这个日志框架。Logback的内核重写了,在一些关键执行路径上性能提升10倍以上。而且logback不仅...
  • qq383264679
  • qq383264679
  • 2015年12月02日 14:40
  • 1251

最近的一次敏捷项目Scrum经验总结

Team刚刚完成了一个敏捷项目,做一下项目总结,以备以后借鉴和提高。 需求 - 沟通 – 人 - 过程 - 工具 项目要成功的最关键因素是什么?软件要快速高效又高质量的提交靠的是什么?有人...
  • hjurtwewte
  • hjurtwewte
  • 2014年12月20日 21:47
  • 2785

socket编程:backlog值对listen连接状态的影响

1. 概述 对于TCP服务器,使用bind绑定一个地址和端口,然后使用listen(backlog)在这个socket上监听用户的连接请求。其中,backlog参数的大小,决定了TCP服务器的连接请...
  • wangst4321
  • wangst4321
  • 2013年03月28日 19:02
  • 1929

java socket编程中backlog的含义

服务端socket处理客户端socket连接是需要一定时间的。ServerSocket有一个队列,存放还没有来得及处理的客户端Socket,这个队列的容量就是backlog的含义。如果队列已经被客户端...
  • aitangyong
  • aitangyong
  • 2015年11月05日 14:40
  • 3048

我对Backlog的理解

cat /proc/sys/net/ipv4/tcp_max_syn_backlog 2048 cat /proc/sys/net/core/somaxconn 128
  • jiangguilong2000
  • jiangguilong2000
  • 2015年01月24日 23:34
  • 3214

backlog日志配置

logback日志配置
  • lihaiyang722
  • lihaiyang722
  • 2017年03月29日 11:11
  • 459
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Scrum 之 product Backlog
举报原因:
原因补充:

(最多只允许输入30个字)