Some of this article's listed sources may not be reliable. (August 2017) (Learn how and when to remove this template message)
|Paradigms and models|
|Methodologies and frameworks|
|Standards and Bodies of Knowledge|
In software development and product management, a user story is an informal, natural language description of one or more features of a software system. User stories are often written from the perspective of an end user or user of a system. They are often recorded on index cards, on Post-it notes, or in project management software. Depending on the project, user stories may be written by various stakeholders including clients, users, managers or development team members.
User stories are often confused with system requirements. A requirement is a formal description of need; a user story is an informal description of a feature.
User stories are written by or for users or customers to influence the functionality of the system being developed. In some teams, the product manager (or product owner in Scrum), is primarily responsible for formulating user stories and organizing them into a product backlog. In other teams, anyone can write a user story. User stories can be developed through discussion with stakeholders, based on personas or simply made up.
As a <role> I can <capability>, so that <receive benefit>
Chris Matts suggested that "hunting the value" was the first step in successfully delivering software, and proposed this alternative:
In order to <receive benefit> as a <role>, I can <goal/desire>
Elias Weldemichael, on the other hand, suggested the "so that" clause is perhaps optional although still often helpful:
As a <role>, I can <goal/desire>, so that <why>
Another template based on the Five Ws specifies:
As <who> <when> <where>, I <want> because <why>
Another template based on Rachel Davies' popular template:
As <persona>, I can <what?> so that <why?>
where a persona is a fictional stakeholder (e.g. user). A persona may include a name, picture, characteristics, behaviors, attitudes, and a goal which the product should help them achieve.
Screening Quiz (Epic Story)
As a central part of many agile development methodologies, such as in XP's planning game, user stories define what has to be built in the software project. User stories are prioritized by the customer (or the product owner in Scrum) to indicate which are most important for the system and will be broken down into tasks and estimated by the developers. One way of estimating is via a Fibonacci scale.
When user stories are about to be implemented, the developers should have the possibility to talk to the customer about it. The short stories may be difficult to interpret, may require some background knowledge or the requirements may have changed since the story was written.
Every user story must at some point have one or more acceptance tests attached, allowing the developer to test when the user story is done and also allowing the customer to validate it. Without a precise formulation of the requirements, prolonged nonconstructive arguments may arise when the product is to be delivered.
There is no good evidence that using user stories increases software success or developer productivity. However, user stories facilitate sensemaking without undue problem structuring, which is linked to success.
Limitations of user stories include:
User stories written on small physical cards are hard to maintain, difficult to scale to large projects and troublesome for geographically distributed teams.
Vague, informal and incomplete
User story cards are regarded as conversation starters. Being informal, they are open to many interpretations. Being brief, they do not state all of the details necessary to implement a feature. Stories are therefore inappropriate for reaching formal agreements or writing legal contracts.
Lack of non-functional requirements
User stories rarely include performance or non-functional requirement details, so non-functional tests (e.g. response time) may be overlooked.
In many contexts user stories are used and also summarized in groups for semantic and organizational reasons. The different usages depend on the point-of-view, e.g. either looking from a user perspective as product owner in relation to features or a company perspective in relation to task organization.
While some suggest to use 'epic' and 'theme' as labels for any thinkable kind of grouping of user stories, organization management tends to use it for strong structuring and uniting work loads. For instance, Jira, seems to use a hierarchically organized to-do-list, in which they named the first level of to-do-tasks 'user-story', the second level 'epics' ( grouping of user stories ) and the third level 'initiatives' ( grouping of epics ). However, initiatives are not always present in product management development and just add another level of granularity. In Jira, 'themes' exist ( for tracking purposes ) that allow to cross-relate and group items of different parts of the fixed hierarchy.  In this usage, Jira, shifts the meaning of themes in an organization perspective: e.g how much time did we spent on developing theme "xyz". But another definition of themes is: a set of stories, epics, features etc for a user that forms a common semantic unit or goal. There is probably not a common definition because different approaches exist for different styles of product design and development. In this sense, some also suggest to not use any kind of hard groups and hierarchies. 
Large stories or multiple user stories that are very closely related are summarized as epics. A common explanation of epics is also: a user story that is too big for a sprint.
Multiple epics or stories grouped together hierarchically, mostly known from Jira.
Multiple epics or stories grouped together by a common theme or semantic relationship.
A story map is a graphical, two-dimensional visualization of the product backlog. At the top of the map are the headings under which stories are grouped, usually referred to as 'epics' (big coarse-grained user stories), 'themes' (collections of related user stories) or 'activities'. These are identified by orienting at the user's workflow or "the order you'd explain the behavior of the system". Vertically, below the epics, the actual story cards are allocated and ordered by priority. The first horizontal row is a "walking skeleton" and below that represents increasing sophistication.[clarification needed]
In this way it becomes possible to describe even large systems without losing the big picture.
A use case has been described as "a generalized description of a set of interactions between the system and one or more actors, where an actor is either a user or another system." While user stories and use cases have some similarities, there are several differences between them.
|User Stories||Use Cases|
|Template||As a <type of user>, I can <some goal> so that <some reason>.||
Manage research, learning and skills at defaultlogic.com. Create an account using LinkedIn to manage and organize your omni-channel knowledge. defaultlogic.com is like a shopping cart for information -- helping you to save, discuss and share.