Softwareanforderungen aufnehmen

Bei der Aufnahme der Anforderungen geht es um zwei Dinge.

  1. Verstehen, was der Anwender benötigt – welchen Nutzen soll das Programm haben.
  2. Welche Funktionen sind notwendig, damit das Programm erstellt werden kann.

Wenn Sie ein Programm entwickeln wollen um ihre Notizen zu verwalten, dann ist der Nutzen – Notizen erfassen und sie wiederzufinden. Eine Funktion ist – Notiz anlegen – eine andere Funktion ist – Notiz nach bestimmten Kriterien wiederfinden – eine weitere Funktion ist – Notiz löschen.

Wie sieht eine Anforderung aus?
Einfach gesagt ist eine Anforderung eine Geschichte (User Story), die beschreibt, was aus der Sicht eines Beteiligten im Programm passieren soll. Jede User Story sollte so formuliert werden, dass man den Beteiligten(Rolle), die Funktion(Feature) und den Nutzen(Benefit) erkennen kann –
wenn es die Funktion gibt, welchen Nutzen hat dann ein Anwender davon.

Rolle: Wer
Feature: soll was tun können
Benefit: welchen Nutzen soll er davon haben

Beispiel – Notiz Applikation
Rolle: Anwender
Feature: kann eine Notiz anlegen
Benefit: damit er seine Gedanken festhalten kann.

Beispiel – Onlineshop
Rolle: Kunde
Feature: kann Ware in den Warenkorb legen
Benefit: damit er sieht, was er eingekauft hat.

Beispiel – Finanzsoftware
Rolle: Anleger
Feature: kann seine Risikobereitschaft eingeben
Benefit: damit das System eine Anlagestrategie vorschlagen kann

In der Regel gibt es sehr viele Anforderungen an eine Applikation. Damit sie schnell erfasst werden können, verwendet man in der Praxis eine Listendarstellung, die tabellarisch aufgebaut ist. Jede Anforderung sollte dabei ein eindeutiges Merkmal (Kennziffer) und eine kurzen Titel haben. Die User Stories werden meist verkürzt formuliert, ohne die Angabe des Benefits. Die Reihenfolge in der Anforderungen aufgenommen werden, ist nicht entscheidend. Wichtig ist die möglichst vollständige Abdeckung der Feature.

Anforderung
Titel
User Story
ANF-1
Notiz anlegen
Anwender kann eine Notiz anlegen
ANF-2
Notiz bearbeiten
Anwender kann eine Notiz bearbeiten
ANF-3
Notiz löschen
Anwender kann eine Notiz löschen
ANF-4
Notiz suchen
Anwender kann eine Notiz nach dem Titel oder Notizinhalt suchen

Formulieren Sie die User Stories nur dann verkürzt, wenn Sie auch den Nutzen genau kennen. Es sollte vermieden werden unnötige Funktionen in eine Applikation aufzunehmen, die für den Anwender keinen echten Nutzen bieten.
Laut Statistik werden ca. 40% der Feature im Programmen nicht genutzt!

Beim schreiben der Anforderungen ist es notwendig, möglichst vollständige Informationen über den Bedarf des Anwenders zu erhalten. Bei Fachanwendungen, bei denen Arbeitsabläufe eine wichtige Rolle spielen, ist es hilfreich sich in den Anwender hineinzuversetzen. Dadurch bekommt man ein besseres Verständnis für die Anforderungen, und kann bei Bedarf gezielt nachfragen. Versuchen sie von den Beteiligten so viel Informationen zu bekommen wie nur möglich.
Wie die Funktionen im Programm umgesetzt werden, kann ihnen beim formulieren der User Stories egal sein.

Tools

Ich nutze folgende Tools für das formulieren von Anforderungen.

Wiki Software wie z.B Confluence und Evernote
Dort notiere ich alles, was für das Software Thema wichtig ist. Fachliche Informationen (Um welche Art von Software handelt es sich, welchen Kundennutzen hat diese, usw.)