传统的瀑布工作模式使用详细的需求说明书来表达需求,需求人员负责做需求调研,根据调研情况编制详细的需求说明书,进行需求评审,评审之后签字确认交给研发团队设计开发。在这样的环境下,需求文档是信息传递的主体,也是一份契约。
然而详细的需求说明书有以下5大弊端:
- 单向的信息传递,容易出现理解偏差。
- 文档很正式,我们会误以为它一定是对的,不去质疑它,让我们停止作出判断。
- 有了详细的文档,我们不会反复讨论它,相互确认。
- 书面文档不利于团队共享责任,它扮演了证据的角色。Scrum强调团队共享责任,不论是需求人员、开发人员和还是测试员,大家的共同目标是通过讨论、协作,正确理解需求之后把这些需求变成客户真正需要的功能,而不是单向的任务传递。
- 编制详细的、表达准确需求文档需要花费大量的时间,如果需求变化频繁,维护成本更高。
- Detailed 合适的详细程度,高优先级需求更加明细,低优先级的需求粒度更大
- Emergent 涌现式的,需求是慢慢涌现出来的,渐进明细的
- Estimated 经过估算的
- Prioritized/ Ordered 根据商业价值排好顺序的
在产品Backlog中,需求的主要表现形式是用户故事。用户故事是从用户的角度对需求的简短描述。用户故事是将团队的焦点从描述、编写功能需求转移到讨论需求的最佳方式。
用户故事是从用户的角度来描述用户渴望得到的功能。一个好的用户故事包括三个要素:
- 角色:谁要使用这个功能。
- 活动:需要完成什么样的功能。
- 商业价值:为什么需要这个功能,这个功能带来什么样的价值。
用户故事通常按照如下的格式来表达:
英文:
As a <Role>, I want to <Activity>, so that <Business Value>.
中文:
作为一个<角色>, 我想要<活动>, 以便于<商业价值>。
比如:作为一个网站的普通会员,我期望在我下订单后,未发货之前可以取消订单,这样对我来说更灵活。
Leangoo领歌是一款专业的敏捷开发管理工具,提供端到端敏捷研发管理解决方案,涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。我们可以通过Leangoo领歌来管理敏捷需求。
如何使用Leangoo领歌做敏捷需求管理
首先注册登录Leangoo系统,新建一个Scrum敏捷开发项目,在项目内新建一个产品Backlog看板,填写好看板名称,如下图:
需求看板创建完成后,系统会自动为您创建几个列表,列表一般代表需求的状态。
在Leangoo领歌看板上,我们可以根据实际场景自定义列表,通常我们会在在产品backlog看板中创建这几个列表:“用户故事池、用户故事-待梳理、用户故事-梳理完成、用户故事-实现中,用户故事-已完成”,通过列表流转,让团队直观的了解需求的优先级和规划安排。然后在每个列表上添加需求卡片,一个需求一张卡片。
下图就是一个产品Backlog示例看板:
上图需求卡片右下角的图标分别代表了这张需求卡片的工作量、对这个需求的一些讨论,以及需求的验收测试要点等。
Leangoo中,验收测试要点是以检查项的方式体现。
打开需求卡片,我们可以添加更多信息,比如:评论,检查项,开始截止时间、标签等,通过标签对卡片进行分类或卡片优先级排序。如下图所示:
在Leangoo中,每个需求卡片的优先级体现有两种方式:
1、由它的位置来决定,每个列表里面的卡片根据位置对卡片进行强制排序,高优先级的卡片放到最上面,低优先级的需求卡片在下面。
2、使用标签,标签可以自由命名,为标签命名后可直接将标签拖拽至卡片上即可一目了然的了解需求优先级。
用户故事添加完成后,团队可以对优先级较高的用户故事进行梳理。可以将完成用户故事需要的任务项添加到卡片内的检查项中,以便后续用户故事规划到Sprint中后,方便拆解成更小的任务卡片。
需求规划至迭代看板进行迭代
每个迭代开始前,我们需要将已梳理完成且优先级最高的用户故事规划到迭代看板内,以便准备迭代中需要完成的内容。
点击看板内“Sprint规划”按钮,将计划在“Sprint1”内做的用户故事拖拽到“Sprint1”看板内。
注:规划过的卡片左上角会有蓝色的规划标记。
需求看板进度统计
根据看板周期、燃尽图配置信息,Leangoo可统计项目下所有需求看板进度。
每个迭代中都有一个重要的迭代进度统计 — 燃尽图。
燃尽图是Scrum中的一个简单实用的团队进展跟踪的工具,能形象地展示当前迭代中的剩余工作量和剩余工作时间的变化趋势,一般在每日站会时团队会通过燃尽图来了解当前Sprint冲刺速度情况。Leangoo领歌会根据故事卡片的变化自动生成发布燃尽图。
点击看板右侧“菜单”,选择“看板统计”即可查看燃尽图,如下图所示:
每个迭代完成率
迭代完成率是统计项目内每个迭代看板的完成情况。
配置好看板周期和燃尽图,Leangoo会自动统计每个迭代看板的完成情况,并且自动生成可视化统计图表,以便管理层可以一目了然的看到每个迭代完成进度。
统计每个迭代团队速率
团队速率是Scrum团队在一个迭代中实际完成的工作量(通常使用故事点做为团队速度的单位)。
每个迭代结束后,Leangoo领歌会自动记录当前迭代完成的工作量,并且自动生成团队速率的可视化统计图表,以便团队可以了解团队效率变化的趋势并进行分析。
通过上述的方式,我们就可以很好的管理敏捷需求了。
最后还有一点提醒,敏捷强调透明性,所以,可视化管理产品backlog很重要,如果条件允许,我们可以考虑通过大的显示屏幕将产品Backlog进行可视化,有触屏大电视会更好。
本文作者:
廖靖斌 Eric Liao, CSP,CSM,知名敏捷教练、顾问、培训师