How to write a good user story

简介:

Introduction to User Stories

User stories are first-class citizen for Scrum and Extreme Programming (XP), A user story is a very high-level definition of a requirement, just include enough information so that developers can estimate the time to implement it.

A good way to think about a user story is just a placeholder for remaindering the developer should have conservation with your customer.

How to write a user story?

You can follow below steps:

1. As a [Actor], I can/want [feature] because/so that

e.g.

As a dinner, I want have a lunch because I am hungry.

As a project Leader, I want make a plan.

As a user, I can manage my schedule.

2. Use index cards

Write an easy to understand user story title on Index card, the card can be a paper or electronic card in your project system.

e.g.

Title: Admin can add new user

Description: As a admin, he can add a new user.

3. Make it testable with acceptance stories

If use stories are short – how are we suppose to know all the different acceptance criteria? just write out any of your acceptance tests using this template:

Scenario 1: Title 
Given [context] 
And [some more context]… 
When [event] 
Then [outcome] 
And [another outcome]…

For example:

Scenario 1: Account balance is negative 
Given the account’s balance is below 0 
And their is not a scheduled direct deposit that day 
When the account owner attempts to withdraw money 
Then the bank will deny it 
And send the account owner a nasty letter.

What contents in the story?

It includes 3 C:

  • Card
  • Conversation
  • Confirm

What features a good story should have?

A good user story should have 6 features, INVEST:

  • Independent
  • Negotiable
  • Valuable
  • Estimatable
  • Small
  • Testable
本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2010/07/26/1784990.html如需转载请自行联系原作者

王德水
相关文章
EnvironmentNotWritableError: The current user does not have write permissions to the targe...
EnvironmentNotWritableError: The current user does not have write permissions to the targe...
1894 0
Newline required at end of file but not found.
Newline required at end of file but not found.
179 0
Newline required at end of file but not found.
|
NoSQL MongoDB 数据库
DeprecationWarning: count is deprecated. Use Collection.count_documents instead
当我使用pymongo查询出对应的cursor(find出的document的迭代器),然后查看查询出数据的数量时使用如下代码: ```python db = MongoClient(host='192.168.1.3', port=27017) # dbname为操作的数据库名称,collectionname为操作的集合名称
343 0
【hacker的错误集】DeprecationWarning: find_element_by_* commands are deprecated.
DeprecationWarning: find_element_by_* commands are deprecated. Please use find_element() instead。依旧是使用单词意思分析报错原因
143 0
【hacker的错误集】DeprecationWarning: find_element_by_* commands are deprecated.
|
XML 数据格式
Do not concatenate text displayed with setText,use resource string with placeholders.
Do not concatenate text displayed with setText,use resource string with placeholders.
264 0
Do not concatenate text displayed with setText,use resource string with placeholders.
|
人工智能
Practical Skill Test——AT
题目描述 We have a grid with H rows and W columns. The square at the i-th row and the j-th column will be called Square (i,j). The integers from 1 through H×W are written throughout the grid, and the integer written in Square (i,j) is Ai,j.
109 0
Leetcode-Easy 806. Number of Lines To Write String
Leetcode-Easy 806. Number of Lines To Write String
79 0
|
XML Java 数据库连接
Open quote is expected for attribute "{1}" associated with an element type "id".
Open quote is expected for attribute "{1}" associated with an element type "id".
201 0
Open quote is expected for attribute "{1}" associated with an element type "id".
|
存储 固态存储 内存技术
Long Story of Block - DISCARD
## Concept ### introduction to DISCARD DISCARD 的概念其实来自 SSD 设备。我们知道由于 flash 存储介质的特性,SSD 设备中的一个 block 只支持 write、erase 操作,而不支持 overwrite 操作。对于一个已经被 write 过的 block,如果需要向这个 block 写入新的数据,就必须先对该 block
1722 1