The Info List - User Story

--- Advertisement ---


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 a type of boundary object . They facilitate sensemaking and communication, that is, they help software teams organize their understanding of the system and its context.

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.


* 1 History

* 2 Creating user stories

* 2.1 Format

* 3 Examples * 4 Usage * 5 Benefits * 6 Limitations * 7 Story map * 8 Comparing with use cases * 9 See also * 10 References * 11 Further reading


_ This article or section MAY HAVE BEEN COPIED AND PASTED FROM HTTPS://WWW.AGILEALLIANCE.ORG/GLOSSARY/USER-STORIES/ (DUPDET · CopyVios), possibly_ in violation of\'s copyright policy . Please remedy this by editing this article to remove any non-free copyrighted content and attributing free content correctly, or flagging the content for deletion. Please be sure that the supposed source of the copyright violation is not itself a mirror . _(May 2016)_

With Extreme Programming
Extreme Programming
(XP)., user stories were a part of the planning game .

In 2001, Ron Jeffries proposed a "Three Cs" formula for user story creation:

* A _Card_ (or often a post-it note ) is a tangible durable physical token to hold the concepts; * A _Conversation_ between the stakeholders (customers, users, developers, testers, etc.). It is verbal and often supplemented by documentation; * The _Confirmation_ ensures that the objectives of the conversation have been reached.


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.


User stories may follow one of several templates. A team at Connextra developed a popular user-story template in 2001: "As a _,_ I want __ so that __"

Mike Cohn , a well-known author on user stories, regards the "so that" clause as optional: "As a _,_ I want __"

Chris Matts suggested that "hunting the value" was the first step in successfully delivering software, and proposed this alternative as part of Feature Injection: "In order to __ as a _,_ I want __"

Another template based on the Five Ws specifies: "As __ __ _,_ I __ because _._"

A template developed at Capital One
Capital One
in 2004 during their initial adoption of Agile methods focuses on the functionality and specifies: "As a __, I can __ so that __"

Another template based on Rachel Davies' popular template: "As __, I want __ so that __"

where a persona is a fictional stakeholder (e.g. user). A persona may include a name, picture; characteristics, behaviours, attitudes, and a goal which the product should help them achieve.


SCREENING QUIZ (EPIC STORY) As the HR manager, I want to create a screening quiz so that I can understand whether I want to send possible recruits to the functional manager.

QUIZ RECALL As a manager, I want to browse my existing quizzes so I can recall what I have in place and figure out if I can just reuse or update an existing quiz for the position I need now.

LIMITED BACKUP As a user, I can indicate folders not to backup so that my backup drive isn't filled up with things I don't need saved.


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.


User story
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.


User stories rarely include performance or non-functional requirement details, so non-functional tests (e.g. response time) may be overlooked.


A story map in action

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.

In this way it becomes possible to describe even big 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.



* Generally formulated in users' everyday language. They should help the reader understand what the software should accomplish.

* Written in users' everyday business language, to facilitate stakeholder communications.


* Provide a small-scale and easy-to-use presentation of information, with little detail, thus remaining open to interpretation, through conversations with on-site customers.

* Use cases organize requirements to form a narrative of how users relate to and use a system. Hence they focus on user goals and how interacting with a system satisfies the goals. * Use case
Use case
flows describe sequences of interactions, and may be worded in terms of a formal model. A use case is intended to provide sufficient detail for it to be understood on its own.

Template _As a , I want so that ._

* Title: "goal the use case is trying to satisfy"

* Main Success Scenario: numbered list of steps

* Step: "a simple statement of the interaction between the actor and a system"

* Extensions: separately numbered lists, one per Extension

* Extension: "a condition that results in different interactions from .. the main success scenario". An extension from main step 3 is numbered 3a, etc.

Kent Beck
Kent Beck
, Alistair Cockburn , Martin Fowler and others discussed this topic further on the c2.com wiki (the home of extreme programming ).


* Kanban board * Persona (user experience) * Scenario (computing) * Use case
Use case


* ^ Ralph, Paul (2015). "The Sensemaking-coevolution-implementation theory of software design". _Science of Computer Programming_. 101: 21–41. doi :10.1016/j.scico.2014.11.007 . * ^ Beck, Kent (1999). "Embracing change with extreme programming". _IEEE Computer_. 32 (10): 70–77. * ^ Ron Jeffries (August 30, 2001). "Essential XP: Card, Conversation, Confirmation". * ^ "Connextra User Story 2001: ConnextraStoryCard". _Agilecoach.typepad.com_. Retrieved 2017-02-23. * ^ Cohn, Mike. "User Story Template
Advantages". _Mountaingoatsoftware.com_. Retrieved 2017-02-23. * ^ AntonyMarcano (2011-03-24). "Old Favourite: Feature Injection User Stories on a Business Value Theme". _Antonymarcano.com_. Retrieved 2017-02-23. * ^ Mishkin Berteig (2014-03-06). "User Stories and Story Splitting". Agile Advice. Retrieved 2017-02-23. * ^ "10 Tips for Writing Good User Stories". _Romanpichler.com_. Retrieved 2017-02-23. * ^ _A_ _B_ Cowan, Alexander. "Your Best Agile User Story". _Cowan+_. Retrieved 29 April 2016. * ^ _A_ _B_ Cohn, Mike. "User Stories". _Mountain Goat Software_. Retrieved 27 April 2016. * ^ Ralph, Paul; Mohanani, Rahul. "Is Requirements Engineering Inherently Counterproductive?". IEEE. doi :10.1109/TwinPeaks.2015.12 .

* ^ "Limitations of user stories". Ferolen.com. April 15, 2008. * ^ Patton, Jeff. "The new user story backlog is a map". Retrieved 17 May 2017. * ^ Pichler, Roman. "10 Tips for Writing Good User Stories". Retrieved 29 July 2014. * ^ Cohn, Mike. "User Stories, Epics and Themes". _Mountaingoatsoftware.com_. Retrieved 2017-02-23. * ^ Cockburn, Alistair. "Walking Skeleton". Retrieved 4 March 2013.

* ^ "Story Mapping". Agile Alliance. Retrieved 1 May 2016. * ^ Cohn, Mike. "Project Advantages of User Stories as Requirements". _Mountaingoatsoftware.com_. Retrieved 2017-02-23. * ^ Martin Fowler (18 August 2003). "UseCasesAndStories". * ^ "\', \'\' + words + \'\', \'". _C2.com_. Retrieved 2017-02-23.


* Daniel H. Steinberg, Daniel W. Palmer, _Extreme Software Engineering_, Pearson Education, Inc., ISBN 0-13-047381-2 . * Mike Cohn, _User Stories Applied_, 2004, Addison Wesley, ISBN 0-321-20568-5 . * Mike Cohn, _Agile Estimating and Planning_, 2006, Prentice Hall, ISBN 0-13-147941-5 . * Business Analyst Time * Payton Consulting \'How user stories are different from IEEE requirements

Retrieved from "https://en.wikipedia.org/w/index.php?title=User_story additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy .® is a registered trademark of the Wikimedia Foundation, Inc. , a non-profit organization.

* Privacy policy * About * Disclaimers * Contact * Developers * Cookie statement * Mobile view

* *


Time at 25054152.033333, Busy percent: -85.662466311147

Warning: error_log(logs/periodic-service_log.txt): failed to open stream: Permission denied in /opt/lampp/htdocs/php/PeriodicService.php on line 30
***************** NOT Too Busy at 25054152.033333 3logs/periodic-service_log.txt
Warning: file_get_contents(periodicTasks.txt): failed to open stream: No such file or directory in /opt/lampp/htdocs/php/PeriodicService.php on line 40

Warning: file_get_contents(file-server-ip.txt): failed to open stream: No such file or directory in /opt/lampp/htdocs/php/const.php on line 59

Notice: Undefined offset: 1 in /opt/lampp/htdocs/php/const.php on line 62

Warning: error_log(isfileserver_log.txt): failed to open stream: Permission denied in /opt/lampp/htdocs/php/helper.php on line 21

Warning: file_put_contents(periodicTasks.txt): failed to open stream: Permission denied in /opt/lampp/htdocs/php/PeriodicService.php on line 171