NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

正确设定用户故事的大小

  • 2008-02-11
  • 本文字数:759 字

    阅读完需:约 2 分钟

资深的敏捷实践者都会知道,敏捷过程中最困难的部分之一就是如何正确地编写用户故事。最近, Pat Kua 解答了一个核心问题:故事里应该放入多少细节?

用户故事是敏捷项目中轻量级需求的表达形式,用来取代传统项目中长长的用例。面面俱到的用例并不易于适应客户需求的变更。而作为替代,用户故事提供 了恰好够用的信息来开始开发人员与产品拥有者(Product Owner)之间的对话。它同时也是可以为最终用户提供价值的最小的功能片段。下面是来自 Mike Cohn 用户故事表述需求的 27 条优势一文中的几个例子:

  • 用户可以在网站上张贴简历。
  • 用户可以搜索工作机会。
  • 公司可以发布新的工作机会。
  • 用户可以限定谁可以看到她的简历。

用 Bill Wake 发明的助记词来形容就是,我们为优秀的故事投入时间和精力(INVEST):它们是独立的( Independent),可以磋商的(Negotiable),有价值的(Valuable),可以估算的(Estimable),短小(Small)而且可以测试(Testable)。

按照 Patrick 的说法,知道故事里需要编写多少细节、何时编写这些细节以后,就掌握了编写用户故事的诀窍。如果像用例那样早早就写下太多细节,一个故事在被实现之前就会被重写很多次了。如果写的细节太少,那开发人员就无从计划、无从下手实现。 Patrick 说道:

对于那些需要被立刻实现的故事,你就应该提供足够的信息以供开发人员和测试人员明晰需求所用。因为没有足够的细节而造成的浪费肯定会在后续的活动中不断地重现。
……对那些在遥远的将来才会被实现的故事,就不需要同样丰富的细节了。在早期捕获过多细节所造成的浪费必将在分析层面上持续上演。

所以,答案就是视情况而定:故事离你越远,它的细节就应该越少。只有那些即将进行处理的故事才应该拥有测试用例和相关细节。

Pat Kua 的站点上有故事里应该放入多少细节这篇文章的全文。

查看英文原文 Right-Size Your User Stories

2008-02-11 03:321346
用户头像

发布了 197 篇内容, 共 52.5 次阅读, 收获喜欢 20 次。

关注

评论

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

一文详解:企业数字化的未来基石——微服务

穿过生命散发芬芳

微服务 4月月更

【MARS TALK 05】今日头条 App 基于火山引擎MARS研发流程最佳实践

字节跳动终端技术

android 今日头条 字节跳动 研发

Hoo虎符研究院 |ETH2.0合并在即 速来围观流动性质押赛道的潜力项目

区块链前沿News

eth 虎符 Hoo 虎符交易所

从安全和不安全两个角度,教你如何发布对象(含各种单例代码)

华为云开发者联盟

安全 线程 高并发 发布对象 对象溢出

真香!盘点云主机三种典型应用场景

天翼云开发者社区

云主机

IM开发技术分享:浅谈IM系统中离线消息、历史消息的最佳实践

JackJiang

网络编程 TCP协议 即时通讯IM im开发

容器化应用:我们都经历了什么

Rayzh

Docker Kubernetes 云原生 Cloud Native

GPU市场规模和各子市场趋势分析

Finovy Cloud

人工智能 gpu

Carina 的根基与诞生背景|深入了解 Carina 系列 第一期

BoCloud博云

开源 本地存储

如何提升研发效能实现 10 倍研发效能提升

阿里云云效

云计算 阿里云 云原生 研发效能 研发

你真的了解IT资产管理系统(ITAM)吗?

低代码小观

资产管理 企业管理系统 CRM系统 企业管理工具 资产安全

一个比Postman好用的工具,不试一下?

Liam

前端 后端 Jmeter Postman swagger

新基建下纵览全局,2+4+31+X实力出镜

天翼云开发者社区

云计算 云技术

数据连接一切,开启融合数据云新时代——星环科技春季新品发布周盛大开启

星环科技

Envoy熔断限流实践(一)基于Rainbond插件实现熔断

北京好雨科技有限公司

Kubernetes PaaS envoy rainbond

百尺竿头更进一步 – Amazon Aurora 的读写能力扩展之 ShardingSphere-Proxy 篇

亚马逊云科技 (Amazon Web Services)

Tech 专栏

毕设:设计电商秒杀系统

王大胖

Android C++系列:C++最佳实践5 const

轻口味

c++ android ndk jni 4月月更

如何应对“科技人才热”?华为云联合慧科集团加速培养模式创新

华为云开发者联盟

教育 华为云 高校 华为云路网数字化服务 慧科

厉害了!天翼云电脑开启5G商用第一站

天翼云开发者社区

java高级用法之:JNA中的回调

程序那些事

Java Netty 程序那些事 4月月更

中国云终端市场发展报告发布天翼云稳居领导者地位

天翼云开发者社区

案例 认证

高层次人才一站式服务平台开发 人才综合服务平台系统

a13823115807

打基础丨Python图像处理入门知识详解

华为云开发者联盟

Python OpenCV 图像处理 图像 二值图像

数据库性能优化方案

五分钟学大数据

4月月更

深入JVM内置锁 synchronized 底层

janyxe

JVM synchronized synchronized锁升级过程

Carina 本地存储入选 CNCF 云原生全景图

BoCloud博云

开源 cncf 本地存储

TASKCTL 容器签出失败解决方法

TASKCTL

大数据 DevOps 分布式 ETL 自动化运维

TASKCTL 作业调度节点数超规格处理方法

TASKCTL

开源 DevOps 分布式 方法论 敏捷开发

天翼云战略发布“5G+天翼云+AI”三生万物 赋能5G时代数字化转型升级

天翼云开发者社区

不care工具,在大数据平台中Hive能自动处理SQL

华为云开发者联盟

sql 大数据 mapreduce hive 数据分析

正确设定用户故事的大小_研发效能_Mark Levison_InfoQ精选文章