写点什么

谁是这个用户故事的受益者?

  • 2010-11-07
  • 本文字数:1038 字

    阅读完需:约 3 分钟

标准 用户故事 的格式是这样的,“作为 [角色],我想要 [目标 / 期望] 以便 [好处]”。但是,对于有些用户故事,当要填充角色字段时,这种简单的模板就会出现问题。

例如,最近在 Scrum 开发组上, Kevin Krac 问到下面这个真实的用户故事:

产品负责人想到了这样一个故事,关于客户完成购买后,更改客户可以联系的商家的电话号码。目前,在发给客户的电子邮件中列出了市场部的电话号码,但产品负责人认为给出销售代表的电话号码更加明智。

制定这个用户故事时,角色字段应该填谁呢?产品负责人吗?市场部门的员工?销售代表?还是其他人?

到底为什么要在用户故事中包括角色字段呢? Don MacIntyre 给出了一个理由 :“我发现清楚地识别出受益角色能帮助产品负责人提出清晰的价值定位——这反过来会帮助他们排列故事的优先级 。 ”然而,在这个故事中,在开发团队实现它以后,受益人是谁不是很清楚。

Ron Jeffries 认为坚持标准故事格式没有多大价值:

卡片上无论写谁都不太贴切:我更喜欢像“把市场部的电话号码替换成客户销售代表的电话号码。” […]

思考很重要;要选择最有价值的故事很重要;给团队解释最后的决定很重要;有具体的测试确保它的有效性也同样重要。

卡片上写的是什么没有那些内容那么重要。

但是,Mick Cohn 认为标准的用户故事格式 有一些好处 。他看到的好处包括:

  • 以第一人称(“As a … I want …”)编写用户故事能帮助开发人员和其他人识别出他们的工作能为谁带来利益。
  • 按相同的方式组织所有的故事能帮助产品负责人排列故事的优先级,因为这样产品负责人就不需要在脑子里单独解析每个故事的文字了。

为了让非标准的故事也能使用标准的格式, Mick Cohn 有几个提示

一个好的用户故事对系统所有的利益相关者都是有关的。故事可以不用“想要”,比如“作为一名购物者,开始结帐时可以给我展示配套产品。”或者,“作为一名用户,我被强制要求每 90 天更改一次我的密码。”因此并非所有故事都需要有“想要”这个词。

在用户故事模板上填上空白好了,无论那个模板如何完美,它都不会帮助我们去完成艰难的工作。就像 Ron Jeffries 所说的那样,用户故事成功的关键是“ 卡片、对话和确认 ”(3C, Card, Conversation, Confirmation)。就是说,卡片上只要写上适量的文本,能识别需求(“用户故事”)就好了;然后让客户与程序员有适当的沟通,以便他们能成功地进行编码,实现需求;并通过验收测试的方法去验证已经完成的工作。

查看英文原文 : Who Wants This User Story?

2010-11-07 19:541783
用户头像

发布了 38 篇内容, 共 90502 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

一文带你彻底了解Java异步编程

Java老k

Java 响应式编程 reactor 异步编程

架构师训练营W07作业

Geek_f06ede

区块链数字物流应用落地解决方案

t13823115967

区块链落地 区块链+ 数字物流应用落地解决方案

AWS IoT Greengrass设计解析

soolaugust

边缘计算 工业4.0 工业物联网 iiot

架构师 3 期 3 班 -week2- 总结

zbest

总结 week2

30分钟玩转「正则表达式」

Yano

正则表达式

每一位程序员都应该保存的计算机网络总结,哪怕你刚进大学

996小迁

Java 架构 面试

年轻人不讲武德,竟然重构出这么优雅后台 API 接口

楼下小黑哥

重构 Spring MVC

美团T8级架构师剖析Spring Boot源码:日志、缓存、消息、Web服务等

Java架构追梦

Java 源码 架构 微服务 springboot

云上看警博会黑科技,得益于华为云打造的“云之盾”

脑极体

面试官问我:Object o = new Object() 占用了多少个字节?

moon聊技术

JVM Java虚拟机 JVM虚拟机原理

前端: 如何快速将应用封装成js-sdk?

徐小夕

Java 大前端

盖洛普

成周

PGAS模型编程语言

星际行者

《机器学习》By:周志华,PDF免费下载

计算机与AI

学习

写了一套优雅接口之后,领导让我给大家讲讲这背后的技术原理

楼下小黑哥

spring 重构

智能视频监控的发展和优势

anyRTC开发者

安全 监控 音视频 WebRTC RTC

学Linux到底学什么?未来职业到底是怎么样的?

Linux服务器开发

Linux 后端 Linux服务器 底层应用开发 web服务器

甲方日常 60

句子

工作 随笔杂谈 日常

Spring 源码学习 03:创建 IoC 容器的几种方式

程序员小航

spring 源码 ioc 源码阅读

跟随杠精的视角一起来了解Redis的主从复制

leonsh

redis redis高可用 redis主从

线程池ForkJoinPool简介

Java老k

Java 线程池 forkjoin

聊聊OpenAPI Specification(OAS)

尤利西斯的微笑

全栈工程师 软件设计 swagger OpenAPI

想了解表格问答,我们先看看TA的前世

华为云开发者联盟

数据库 规范 表格

【Linux开发】编写属于你的第一个Linux内核模块

程序员小灰

c++ Linux 后台开发 架构师 服务器开发

万字长文深度剖析面向对象的javascript

程序那些事

Java nodejs 程序那些事 面向对象js

这次我让你彻底弄懂 RESTful

yes

RESTful

《华为数据之道》读书笔记:第 9 章 打造“安全合规”的数据可控共享能力

方志

大数据 数据中台 数据安全

极客大学 - 架构师训练营 第十一周作业

9527

go-zero 之 rest 实战与原理

万俊峰Kevin

RESTful api 网关 microservice Go 语言

精心总结C++智能指针用法详解(完整版)附带视频讲解

ShenDu_Linux

c++ 程序员 指针 智能指针

谁是这个用户故事的受益者?_研发效能_Dan Puckett_InfoQ精选文章