user story
What is a user story?
A user story is a short description of something that your customer will do when they come to your website or use your application/software, focused on the value or result they get from doing this thing.
重点是 这个 story value and result, 如果 你不确定 自己的story 写的到底对不对,就要搞清楚,value or result 到底是什么,找到最根本的东西
User stories are:
- written from the point of view of a person using your website or application
- written in the language that your customers would use.
How to write user story
The basic technique is simple. You take this format: An an [actor] I want [action] so that [achievement].
actor: the customer or the user, figure out the actor, if you can not figure out , then you have to reconsider whether you need it. 不能写customer或者 user,需要写具体的用户类型,如DBA,如果确实想不到,需要考虑用户建模,
action: describe what will happen , not how it will happen, should not too detailed. 写清楚用户要做什么,但是不能具体怎么做,
achivement: the value or the result, describe the purpose of the feature, if you can not think up the achivement, then you have to reconsider whether the feature is import or not 用户这样子做的目的是什么,考虑一下value
when to use user story
User stories should be written at the beginning of your project, before you start making any decisions about technical solutions or design. Once they’re written they should be prioritised, from most important to your customer to least important. One of the beauties of Agile is that you can keep writing and reprioritising your user stories throughout the development period. - 在 agile team里面,应该是一直都有在写user story,因为总是会不断的有story,只能说,如果一个task 没有 user story的话, 是不能 groom
Why use user stories?
user stories don’t make you think about how something will be implemented; instead they focus on the who and the why. This lets clients/commissioners/Product Owners bring their expertise to bear on defining the who and the why, and lets designers and developers bring their expertise to bear on the how. -更加方便 沟通,不会太具体的东西,用户不需要关注你的细节如何实现,只要关注 why and who, 设计和开发可以更加关注 how
方便创建task,然后用来做计划以及估算时间
在整个 agile process里面,都可以进行增加 删除和修改
可以让开发从用户的角度来思考问题
link from here
https://www.boost.co.nz/blog/2010/09/user-stories
随机推荐
- Python 使用sys.exc_info自己捕获异常详细信息
一般程序中,我们需要对异常进行捕获来保证程序的健壮.但是debug的时候,我们可能需要异常的详细信息,这时可以使用sys.exec_info来处理: import traceback import s ...
- 在vue中使用Echarts画曲线图(异步加载数据)
现实的工作中, 数据不可能写死的,所有的数据都应该通过发送请求进行获取. 所以本项目的需求是请求服务器获得二维数组,并生成曲线图.曲线图的横纵坐标均从获得的数据中取得. Echarts官方文档: ht ...
- Linux源码安装软件
Linux环境下 源码编译安装软件 ==== 1. 下载,步骤略 ==== 2. 验证,部分官方下载同时提供签名,MD5,sha1,sha256等校验信息. $ gpg --verify gnupg- ...
- e充电加密破解
def encrypt(self,stationId ): keys = 'F29E0E39-98E4-F4CC318443' encrypt_obj = pyDes.triple_des(keys, ...
- c#获取汉字首字母拼音
/* * 由SharpDevelop创建. * 用户: lenovo * 日期: 2013/10/22 * 时间: 20:15 * * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件 */ ...
- 自定义pip 包开发简单说明
文档主要来自官方文档,主要是为了测试学习 创建pip 包项目 项目结构 ├── LICENSE ├── README.md ├── dalongrong_example_pkg │ └── __ini ...
- ubuntu deb pacakge 开发
安装构建工具 apt-get install pbuilder 推荐安装 sudo apt-get install build-essential autoconf automake \ autoto ...
- redis性能提升之pipeline
1.以前正常使用过程 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应. 服务器处理命令并将响应发送回客户端. 也就是每个命令都会有一来以往的过程 2.管道的意义 如果能将连续 ...
- ajax请求完成执行的操作
var createAjax = $("#createId").ajax(function(){ //ajax操作 }); $.when(createAjax).done(func ...
- C# Interview Question 1
What is C#? What's the feature of C# language? Answer: