用户故事系列之五:用户故事的分类

这是敏捷开发用户故事系列的第五篇。

引子
在之一、之二、之三中,我们曾经提到了“作为一个……可以……以便……”的用户故事描述方式,还提到应该如何描述用户故事,才能更好地反映客户价值。

下面请尝试一下描述这两个故事:

1. 如果把“保存按钮”统一放在页面上端而非下面,有些屏幕上侧控件的修改,就无需滚屏即可保存。

2. 所有自定义字段,统一改为4000长度的nvarchar。

第一个勉强可以写为:“作为一个用户,可以方便地点击上端的保存按钮,以便在某些控件修改的时候无需滚屏即可保存”,但是这个故事颗粒度显得过小,开发可能只需要1小时,而在客户眼中,也不应该和“作为一个用户,可以对故事进行增删改查,以便……”放在一起。

第二个故事,则找不到“用户”的位置,因为它是我们自己要做的改进,客户完全可以不感知。

这类故事怎么办呢?

分类
有各种分类方法可以把用户故事重新组织一下,下面这种是我自己做的分类,不是一个成熟的方法。

所以在利用这些方法时,一定要理解其用意而不是方法,这样当自己有别的用意时,就能灵活修改。

我自己在开发一个不大的软件时发现,把所有用户故事罗列在一起显示显然极度混乱,于是做了一个相当大的树形结构来显示。

结果发现尽管屏幕利用率很高了,还是难以一眼看到产品的主要功能,原因就是大大小小的故事都挤在一起,有些是产品的卖点应该让客户看到的,有的是要做的重构只和开发团队有关,有些则介于其中,产品经理需要知道,但又不用告诉客户。

另外同样想给客户看的东西,也有大小差异,比如上面例子中的1,如果在“产品版本更新公告”里边,可以写上;但对新客户而言,就不需要,他们完全可以当作产品原来就是这个样子接受下来。

所以最后我的大致分类维度是:横坐标是向外界展现的程度,纵坐标是颗粒度。颗粒度在一定程度上是“有必要呈现的程度”,就是可以以简繁有别地显示产品功能。

 

 颗粒度    客户可见    产品经理可见  开发团队可见
 产品功能描述  数据级别  史诗
 操作级别  功能
 版本发布描述  增强级别   增强  外部缺陷  内部缺陷  重构 债务

 

颗粒度维度
所谓文件,就是一组要操作的数据,比如一个要有用户管理的系统,就肯定有“用户,角色,权限……”这些要操作的数据。其特点是文件是系统的使用者能理解的数据,文件都是名词。

所谓操作,就是对某组或多组数据的操作,对一组数据的操作入手“创建角色”“删除用户”,对多组数据的操作如”为用户分配角色“,其特点是操作是系统使用者的业务操作(就是”干活“的操作),操作都是一个动词。

所谓增强,就是此外的用来做定语、状语、补语的内容了。比如开始引子里边的案例1,就是为了用户方便做的东西,既不是用户要管理的数据,也不是用户平时工作的操作。

这个维度,在”客户可见“的层面上理解,非常方便。

比如描述产品有何功能的时候,只需要展示客户可见的史诗和功能。

比如描述产品版本发布描述(升级公告)时,则应该展示发生变化的史诗、功能、增强三者。(缺陷后面谈)

关于这个维度,请参考:http://blog.csdn.net/cheny_com/article/details/6723715

展现程度维度
除了给客户看的东西,有些东西需要产品经理、开发团队自己知道就可以了。他们所知的范围,向前包括,意思就是说客户能看的,产品经理都能看,产品经理能看的,开发团队都能看。

缺陷有两种,客户提出的,自己发现的。前者要向客户展示(在产品升级公告里边),后者产品经理知道就可以了。

重构则是因为开发的方便性、可维护性、性能、功能的实现方法重新设计等原因引起的内部工作,无需向客户及产品经理透露即可。

债务是开发人员“走捷径”留下的可能出问题的地方。这种“可能出问题”,是指未来的功能、结构发生变化后可能出问题,而不是当前的做每种操作可能出问题(那就应该称为缺陷了)。因此既不需要现在就要改正,也需要留下一个记号日后好查。

实际使用情况
在实际项目里边,我发现这种分类可能会因为项目的不同而不同。比如最近我们想增加三种内部史诗、内部功能、内部增强,因为有些功能是为了内部开发方便做的,而且也有文件、操作、增强的区别。

我们还为不同的故事设置了类似“作为一个……,可以……以便……”的描述模板,但还不是很成熟,日后会分享给大家。

所以,在具体管理中本人也会常常改变分类方法,因此本文的内容日后会发生变化;而大家也应该在每个项目中重新思考以往的分类是否合适。

 

作者:陈勇

本专栏经作者授权开设,专栏文章未经许可不得转载

 

火爆 售票中
Scrum.Org 主办
搜索
近期公开班
领导大规模敏捷Leading SAFe认证徽章
11月30-12月1日(周六、周日)
Leading SAFe领导大规模敏捷认证课
远程
Scott Wang 王庆付 授课
scrum alliance csm认证徽章
12月14-15日 (周六、周日)
Scrum Master (CSM) 中文认证课
远程
Lance Zhang 张宁宁 授课
safe scrum master ssm
12月14-15日(周六、周日)
SAFe ScrumMaster 官方认证公开班
远程
Eric Liao 廖靖斌 授课
Scrum.org专业Scrum产品负责人(PSPO)认证徽章
1月4-5日 (周六、周日)
专业Scrum产品负责人(PSPO)中文认证公开课
远程
Derek Ding 丁志润 授课
专业Scrum Master (PSM I) 认证徽章
11月16-17日 (周六、周日)
专业Scrum Master (PSM I) 认证公开课
远程
Derek Ding & Lorenz 授课
大规模敏捷顾问SAFe SPC认证课徽章
11月2-5日(周六-周二)
SAFe认证-SPC SAFe认证培训师导师班
上海-面授
Marsha Xue , Alex Guan 授课
safe scrum master ssm
8月10-11日
SAFe ScrumMaster 官方认证公开班
Eric Liao 廖靖斌 授课
scrum alliance csm认证徽章
11月09-10日
Scrum Master (CSM) 中文认证课
Lance Zhang 授课
scrum alliance csm认证徽章
10月26-27日
Scrum Master (CSM) 中文认证课
中文远程
Scott Dunn & Eric Liao 授课
领导大规模敏捷Leading SAFe认证徽章
10月19-20日
Leading SAFe领导大规模敏捷认证课
Eric Liao 廖靖斌 授课
Scrum联盟acsm认证徽章
10月19-20日
高级Scrum Master(A-CSM)认证公开课
Jim Wang 王军 授课
0
0
小时
0
分钟
0
由Scrum.org主办的 2024中国Scrum大会 8月17日将在上海开幕
0
0
小时
0
分钟
0
预约回电
留下您的手机号,我们会在第一时间联系您。
热线电话:400-696-6280
预约回电
预约成功,我们会尽快联系您。