User Story

Bei der sogenannten “User Story” (dt. wörtlich „Nutzergeschichte“) handelt es sich um eine Anforderung in maximal zwei Sätzen, die in Alltagssprache oder Geschäftssprache an ein Computerprogramm formuliert wird. Die User Story spielt eine wichtige Rolle bei der agilen Softwareentwicklung, die es dem Kunden einfacher macht, Aufgaben für die Software bzw. Programmierer zur formulieren.

Hintergrund

Die Ursprünge von User Stories reichen ins Jahr 1998. Damals wurde im Rahmen des Extreme Programming gefordert, dass Kunden das Ziel eines Projekts einfacher formulieren können sollten. Diese sogenannten „User Stories“ sollten dabei ähnlich wie Anwendungsfälle formuliert werden können. Wichtig war dabei vor allem der praktische Aspekt, der es Kunden ermöglicht Anforderungen einfach zu formulieren, ohne dafür Programmiersprachen zu verwenden. Heute sind User Stories feste Bestandteile der agilen Softwareentwicklung.

Bestandteile und Beispiele

Im Jahr 2001 formulierte Ron Jeffries die Formel der drei Cs: Card, Conversation und Confirmation für die Erstellung von User Stories:

  • Card: physisches Objekt, auf dem die Anforderung notiert wird.
  • Conversation: das Gespräch über die gestellten Anforderungen der jeweiligen Stakeholder. Dies können Kunden, Entwickler, Tester oder Nutzer sein.
  • Confirmation: hierdurch wird erreicht, dass die vereinbarten Anforderungen auch erfüllt werden.

In Bezug auf eine Scrum ist der Product Owner verantwortlich für die Erstellung von User Stories.

Die Bestandteile einer User Story

  • Name: kurz und prägnant gewählt
  • kurze Beschreibung
  • Akzeptanzkritierien: hier werden die Details der Anforderung kurz geklärt. Diese Kriterien gelten schließlich als Möglichkeit, um im Nachgang zu ermitteln, ob die Anforderungen erfüllt wurden.

Der Stakeholder kann auf diese Weise genau formulieren bzw. aushandeln, welche Anforderungen eine agile Software erfüllen soll.

Üblicherweise wird eine User Story nach einer festen Struktur entwickelt:

Anwendertyp -> Aktion -> Ziel oder auch "As a , I want <goal/desire> so that "

Beispiel

Name: Export aller Top-10-Rankings einer Unterseite als CSV-Datei Beschreibung: Ich möchte diese Daten herunterladen, um eine History meiner Platzierungen zu erstellen.

Akzeptanzkriterien:

  • auf die Daten können alle meine Mitarbeiter zugreifen
  • ich kann die Daten für verschiedene Zeiträume erheben und vergleichen
  • ich kann verschiedene Unterseiten meiner Website auswählen

Einzelnachweise


Weblinks