首页 > Linux操作系统 > Linux操作系统 > 使用用例还是用户故事?
Murali Krishna告诉我们:
未能彻底明白用户故事的性质往往都是未能有效地转变到敏捷开发的重大问题。用户故事最重要的特点在於每一个用户故事都是一个“可独立分配”的需求(特徵)单位。要达到“可独立分配”,就要从“用户”如何使用系统来表达用户故事。这样才让你实现到一个能让用户交流,端到端(用户界面到后端)的功能单位。
Murali想的跟众多敏捷社区的人仕一样——用户故事是最好的选择,并引用Mike Cohn写的一篇文章Advantages of User Stories for Requirements。文中指出:
每一个用户故事都包括三方面:然后比较了用户故事和另一个出名的需求收集技巧——用例:
因为故事中有一些跟用例或传统需求语句相同的特征,所以弄清故事和这些早期的需求技术之间的差异是很重要的。这些分别特显出用户故事的好处。用户故事强调说话沟通,文书语言往往很不仔细,亦不能保客户和开发人员所理解的都一样。例如,餐牌上这样写:“前菜有餐汤或者沙拉和面包”
这应该不难理解,但到底我可以选的是
餐汤或者 (沙拉和面包)
(餐汤或者沙拉) 和面包
我们都按著貌似准确的文字去办事,但实情往往不是如此。试比较一下餐牌上写的和侍应生亲口说:「先生想点餐汤还是沙拉?」更好的应该是,在点菜之前送一篮面包过来。
如此看来使用用户故事比较好。但又是否如此呢? Alistair Cockburn,另一位敏捷社区内的名家,仍然使用用例,并从他过往使用用户故事的经验中指出所遇到的问题:Alistair说了「为何不使用用户故事」后,进一步集中讨论「为什么使用用例」。
一如很多人所料,这回事不是黑白分明。我们该如何做好?我们现时在做的到底有用么?只有一个正确方法呢,还是有两个不同的 正确方法呢?或者视乎实际情况而定?会不会是有些情况下用用例较好,而有些情况下用用户故事较好呢?还是其实没太大分别呢——像用例中(或许)包含多个用 户故事而该用例因为一个用户情节内外都貌似用户故事呢)
查看英文原文:Use Cases or User Stories? 译者附注: 用户故事好还是用例好的问题,其实不像作者前面提到用户故事为大多数偏爱使用的工具,像 ICONIX、FDD、OpenUP都很依赖或者支持用例的使用,不过明白两者分别极为重要。知道分别才可以作出合适的决定。 Scott Ambler 曾经在
| 工具 | 通常应用 | 什么时候保存 |
| 用例 | 1. 主要使用需求综述 2. 分析现有系统使用需求 |
使用需求综述 |
| 用户故事 | 1. 探索用户需求 2. 与项目参与者对话的提示 |
功能实现后扔掉 |
很明显两者的使用情况和目的都很不同。甚至有需要下,两者可共同使用及存在。这就不存在到底是那个比较好的问题,亦不应该单靠一些报告说那个比那个好就麻木跟从。重要的是如何更适合当前的情况,这包括项目上的需要,也包括团队的能力。长远来说,是让团队更敏捷。(有别於前文 Murali 中 「敏捷」和「不敏捷」的二元分辨)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14639675/viewspace-418947/ ,如需转载,请注明出处,否则将追究法律责任。