Een user story is een korte beschrijving (story) van wat een gebruiker (user) wil. User stories worden gebruikt bij het ontwikkelen van software of producten. Een user story bestaat uit enkele zinnen gewone spreektaal van de (computer)gebruiker waarin staat wat de gebruiker doet of moet doen, als onderdeel van z'n werk. User stories worden gebruikt binnen agile software development als een manier om de requirements te beschrijven. Hierin zegt men 'wie', 'wat', 'waarom' wil. Het geheel is weinig gedetailleerd en moet passen op een post-it. Het is de belangrijkste manier waarop de gebruiker invloed heeft op de functionaliteit van het te ontwikkelen systeem of product. 

User stories kunnen ook door ontwikkelaars geschreven worden om niet-functionele eisen vast te leggen bijvoorbeeld op het gebied van beveiliging, kwaliteit en performance, maar de eerstverantwoordelijke voor de verzameling van de user stories is de producteigenaar.

Voorbeelden 
Als een gebruiker wil ik mijn klanten kunnen zoeken zowel op voornaam als op achternaam.

Start van het programma
Aan het begin van het programma wordt het document getoond waarmee de gebruiker de laatste keer bezig was. 

Stoppen van het programma
Bij het sluiten van het programma wordt de gebruiker gevraagd of hij z'n werk wil opslaan.

Gebruik 
User stories worden gebruikt bij veel agile ontwikkelingsmethoden zoals XP en Scrum. User stories bepalen wat er wordt gemaakt bij softwareprojecten. Door de gebruiker / producteigenaar / klant worden de user stories op volgorde van belangrijkheid gesorteerd, vervolgens worden ze in taken uitgesplitst en van meer exacte tijdsschattingen voorzien door de ontwikkelaars.

Voordelen 
XP en andere agile ontwikkelingsmethoden hebben een voorkeur voor face-to-face communicatie en begrijpelijke documentatie die snel aangepast kan worden in plaats van zich op het probleem te concentreren.

User stories helpen hierbij:
 Ze zijn erg kort. Ze bevatten zaken die in een korte tijd gemaakt kunnen worden, eerder in dagen dan weken.
 Ze hebben weinig onderhoud nodig.
 Ze maken het mogelijk dat projecten in kleine onderdelen worden opgesplitst. 
 Ze zijn erg geschikt voor projecten waar de eisen en wensen steeds wijzigen, of slecht begrepen worden. 
 Ze maken het makkelijker om de tijd in te schatten die nodig is om het te maken. 
 Om ze te schrijven is het nodig dat de gebruikers bij het systeem betrokken worden zodat de meest waardevolle zaken uit gebruikersoogpunt ook gerealiseerd worden.

Story maps 

Een story map is de grafische weergave van de productbacklog. Bovenaan staan de grote user stories, die worden soms "epics” genoemd. De stories worden gegroepeerd in de volgorde waarop je het systeem zou uitleggen aan een onbekende. Verticaal, onder de epics, staan de user stories op hun kaartjes, in volgorde van belangrijkheid. De eerste horizontale rij is een zogenaamd "walking skeleton", daaronder wordt het fijnmaziger. 

Op deze manier is het zelfs mogelijk om grote systemen te beschrijven zonder het overzicht te verliezen.

Zie ook 
 Acceptatietest
 Agile
 Kanban
 Usecase

Referenties 

Modelvorming
Software engineering