UserStory - dkglab/fall-of-rome GitHub Wiki
User story
A story is a unit of user-visible functionality. It describes a potential “feature” of a software system.
Name
A story is given a short name in addition to a short prose or graphical description.
Description
The description should mention the capability enabled by the feature, the role of the person empowered by that capability, and the goal they achieve or benefit they receive from having that capability. For example:
In order to [goal/benefit] as a [role], I can [capability].
Value and cost
A story has a value (of the benefit or goal for the person in the role) and a cost (of implementing the capability).
Estimating the value or cost of a story is tricky because the value may depend on the presence or absence of other stories, and values and costs change over time. So these are very rough classifications.
The value of a story may be:
- Nice to have
- Significant value
- Critical: without this, the system is nonfunctional or meaningless
The cost of a story may be (assuming 6 hours per week of work outside of class):
- 1 week (6 hours) of labor
- 2 weeks (12 hours) of labor
- 3 weeks (18 hours) of labor
If the estimated cost is greater than 3 weeks of labor, the story should be split into two stories.
If the estimated cost is less than 1 week of labor, the story should be merged with another story.
Risk level
Finally, a story has a level of risk reflecting how likely the estimates of value and cost are wrong and/or likely to change.
The risk of a story may be:
- Low risk
- Medium risk
- High risk