Warum wir Anforderungslisten in ein Backlog mit User Stories überführen

Read this post in English.

Immer wieder kommen Kunden mit sehr groben, technisch ausgerichteten Anforderungslisten in Software-Projekte. Der erste Projektschritt für //SEIBERT/MEDIA besteht in einem solchen Fall dann darin, die Anforderungsliste, die uns vom Kunden zur Realisierung übergeben wird, gemeinsam in ein Product Backlog umzuarbeiten, das den Kundennutzen der Anforderungen verdeutlicht. Das ist keine triviale Aufgabe und fordert dementsprechend etwas Zeit und einige Ressourcen ein. Doch warum soll der Kunde für diese Vorbereitungsarbeiten zahlen, die ja noch gar nichts mit der eigentlichen Umsetzung zu tun haben?

Backlog: Dreh- und Angelpunkt rund um künftige Arbeiten

Das Product Backlog gehört zu den zentralen sogenannten Artefakten in der agilen Software-Entwicklung. Es enthält alle Aufgaben und Arbeiten, die für die Umsetzung der Software erforderlich sind, also zunächst einmal alle bisher bekannten Anforderungen aus der oben erwähnten Liste des Kunden.

Für die gesamte Projektrealisierung ist das Backlog der Dreh- und Angelpunkt. Nicht nur wird durch ihn der erwünschte Nutzen der Anwendung präzisiert. Im Backlog wird auch die Priorisierung der Anforderungen abgebildet, sodass Transparenz über kurz-, mittel- und langfristige Aufgaben entsteht.

Auch für die Aufwandsbeschätzung und damit ein Angebot für die Projektumsetzung sowie später für die Prognose der Restaufwände und -kosten wird dieses Backlog zu Grunde gelegt.

Dabei wird das Backlog niemals als final betrachtet, sondern im Laufe des Projektfortschritts immer weiter verfeinert, erweitert, verändert. Es bildet also auch eine Basis für die Flexibilität, die agile Teams auszeichnet.

Anforderungen als User Stories: Für wen wird Nutzen geschaffen?

Damit eine Anforderung ins Backlog Aufnahme finden kann, wird sie in eine User Story überführt, eine Benutzergeschichte. (Siehe hierzu auch unseren Grundlagenartikel.) Eine solche User Story beschreibt prägnant und kompakt die Rolle des Anwenders, sein Ziel und den Nutzen daraus. Eine User Story im Backlog verdeutlicht also, wer sich Nutzen aus der Arbeit des Teams verspricht.

Ein zentraler Vorteil ist hierbei zunächst der Verzicht auf komplizierte technische Spezifikationen: Statt sich auf technische Details zu konzentrieren, rücken User Stories den Nutzer unumstößlich in den Mittelpunkt, für den die Software entwickelt wird, und sind für alle Beteiligten verständlich – und nicht nur für spezialisierte Entwickler.

Somit bilden User Stories Schnittstellen zwischen dem Entwicklungsteam, dem Kunden und den Endnutzern und lösen die kommunikative Herausforderung zwischen den Entwicklern und den Anwendern bei der Realisierung von Anforderungen: Sie sind verständlich und eindeutig für alle Beteiligten.

Team und Kunde auf derselben Seite

Mit dem Backlog schaffen Agentur und Kunde eine Grundlage, um Klartext zu reden. Gut formulierte, prägnante User Stories schaffen ein gemeinsames Verständnis über umzusetzende Funktionen und helfen, Missverständnisse zu vermeiden - zugunsten eines reibungsarmen und störungsfreien Projektverlaufs und damit zugunsten einer höheren Produktivität.

Business Value erkennen

Ein gutes Backlog gibt Aufschluss über den Business Value der einzelnen Anforderungen: Bei der Entwicklung des Backlogs baut das Team ein Verständnis davon auf, was dem Kunden warum wirklich wichtig ist, denn User Stories werden ja gemeinsam mit ihm priorisiert. Dieses Wissen und diese Erkenntnisse helfen dem umsetzenden Team, die Ziele des Kunden und der Anwendung wirklich zu verstehen und Ergebnisse zu erschaffen, die tatsächlich den Vorstellungen des Auftraggebers entsprechen.

Akzeptanzkriterien stellen Testbarkeit sicher

Akzeptanzkriterien sind feste Bestandteile von User Stories in einem Backlog. Wie der Name schon sagt, entscheidet sich hieran, ob der ProductOwner als "Anwalt des Kunden" eine Funktion abnimmt oder ablehnt, ob eine Funktion also wie definiert umgesetzt worden ist. Es ist verständlich vorgegeben, was ein Feature erfüllen muss. Akzeptanzkriterien bilden die Basis für Tests und damit die systematische Qualitätssicherung.

Grundlage für relative Beschätzungen und Voraussetzung für Kostenkontrolle

Grundsätzlich kann im Vorfeld eines Software-Projekts keine belastbare und seriöse Kostenkalkulation vorgenommen werden, und zwar weder in klassischen noch in agilen Projekten. Das hat auch nichts mit den Fähigkeiten des Dienstleisters zu tun, sondern liegt in den Besonderheiten komplexer IT-Projekte begründet – oftmals unklare Rahmenbedingungen, Abhängigkeiten von Drittsystemen oder -dienstleistern, Einsatz neuer Technologien, sich ändernde Prioritäten, Anforderungsänderungen etc.

Ein Backlog mit User Stories und den entsprechenden Akzeptanzkriterien bildet jedoch eine sehr gute Basis für die in agilen Projekten üblichen und mächtigen relativen Beschätzungen. Es schafft Vergleichbarkeit zwischen den geplanten Features und ist eine Voraussetzung für die volle Budgetkontrolle aufseiten des Kunden. (Eine ausführliche Einführung in das relative Schätzen bietet die Aufzeichnung unserer Live-Session zum Thema.)

Fazit

Die Umarbeitung von Anforderungslisten in ein Backlog mit User Stories ist wertvoll, um bei allen Beteiligten ein klares Bild des gewünschten Nutzen der Software-Applikation zu schaffen und die Anforderungen in den agilen Prozess zu überführen. Und diese Investition ist kein Selbstzweck.

Das Backlog mit seinen User Stories hilft, Missverständnisse und Verzögerungen zu vermeiden, es bietet die Möglichkeit, Anforderungs- und Priorisierungsänderungen einfließen zu lassen, es integriert die Bedürfnisse der Endanwender in den Entwicklungsprozess, ist mit seinen Akzeptanzkriterien die Grundlage für eine transparente Qualitätssicherung und schafft Aufwands- und damit Kostenkontrolle.

Und nicht zuletzt zeigt die Erfahrung, dass ein gutes und gut gepflegtes Backlog maßgeblich zu einer höheren Produktivität des Teams und zu einer höheren Geschwindigkeit bei der Umsetzung beiträgt. Der Kundennutzen ist unmittelbar - und der Nutzen für das Produkt.

Ihr Partner für individuelle Software-Entwicklung mit Scrum

Sie planen ein Software-Projekt? Sie möchten ein bestehendes System erweitern oder eine Software-Plattform migrieren? Sie benötigen Schnittstellen zwischen Anwendungen im Unternehmen? Und bei all dem muss höchste Qualität jederzeit gewährleistet sein?

Dann ist //SEIBERT/MEDIA der richtige Partner für Sie. Wir legen größten Wert auf Erweiterbarkeit, Performanz, Skalierbarkeit, Plattformunabhängigkeit und Testbarkeit und schaffen so individuelle High-End-Software-Lösungen, die sich auch im Nachhinein flexibel ausbauen und verändern lassen. Bitte sprechen Sie uns unverbindlich an! Ausführliche Informationen finden Sie auch in unserem öffentlichen Wiki: Einstieg in die Software-Entwicklung mit //SEIBERT/MEDIA.

Weiterführende Infos

Welche Vorteile bietet mir als Kunde ein Scrum-Projekt?
99 Argumente für Scrum: Was Scrum-Projekte dem Kunden bringen
Beginn eines Happy Ends: Der Anforderungs-Workshop im Scrum-Projekt


Mehr über die Creative-Commons-Lizenz erfahren