Warum iterative Wasserfallprozesse kein Agile sind

„Agile“ ist nicht gleich Agile
Kommentare

Schaut man sich verschiedene Arbeitsweisen und Methoden an, wird heutzutage gerne alles einfach mal als „Agile“ bezeichnet – und zwar auch dann, wenn es eigentlich keine echte agile Methode ist. Während zwar ziemlich offensichtlich ist, dass das klassische Wasserfall-Modell der Arbeitsweise von agilen Methoden wie Scrum oder Kanban gegenübersteht, wird gerade in letzter Zeit dem sogenannten iterativen Wasserfallmodell der Stempel „Agile“ aufgedrückt – zu Unrecht.

Zumindest ist das die Meinung von Mike Cohn, der in einem Blogbeitrag beschreibt, welche Erfahrungen er mit Anwendern des iterativen Wasserfallmodells gemacht hat und warum es alles andere, als agile ist.

Epische User Stories: der Todesstoß für agile Prozesse?

Bei der Durchführung eines jeden Projekts muss sich zu Beginn der Arbeit für eine Arbeitsweise entschieden werden. Gerade in letzter Zeit boomt die Adoption von agilen Methoden gewaltig, doch während zwar immer mehr agile Frameworks entwickelt und Prozesse bestmöglich optimiert werden, herrscht bei vielen Projektteams immer noch eine falsche Vorstellung davon, was Agile eigentlich ist – mal ganz abgesehen davon, dass nicht für jedes Team jede Form der agilen Softwarenentwicklung sinnvoll ist. So ist es nicht nur wenig verwunderlich, wenn bei der agilen Transformationsstrategie einiges im Argen liegt, sondern auch, dass Methoden fälschlicherweise als Agile bezeichnet werden, obwohl sie alles andere als agil sind.

Stellen Sie Ihre Fragen zu diesen oder anderen Themen unseren entwickler.de-Lesern oder beantworten Sie Fragen der anderen Leser.

Die meisten Teams setzen auf User Stories, mit deren Hilfe ein erster Buildplan entwickelt werden soll. Doch während solche User Stories idealerweise kurz und knapp gehalten werden, nehmen sie in vielen Projektteams fast epische Ausmaße an und werden zu einer Art Mini-Spezifikationsdokument. Weil die User Stories immer länger werden, werden immer mehr Sprints benötigt, um alle Spezifikationen zu dokumentieren, für jede User Story ein UI zu entwickeln und dann mit der eigentlichen Entwicklung anzufangen. Von Effizienz kann dann kaum noch eine Rede sein.

Wird dann jedoch bereits mit dem Design anfangen, bevor jede Spezifikation vollständig geschrieben ist, ist das dann agil – zumindest glauben das viele Projektteams. Die Realität sieht nur leider anders aus.

Iterativer Wasserfallprozess ist kein agiles Arbeiten

Tatsächlich ist ein Verfahren wie das oben beschriebene Vorgehen nichts weiter, als ein iterativer Wasserfallprozess, der mit Agile nur wenig zu tun hat. In vielen Fällen ähnelt dieser Prozess trotzdem sehr stark dem klassischen Wasserfallmodell. Entsprechend werden Design, Analyse und Coding beziehungsweise Testing nacheinander abgearbeitet – nur dass dabei jede User Story als eigenes Projekt behandelt wird. Dazu sagt Mike Cohn:

They do all the analysis for one story, then all the design for one story, then all the coding and testing for one story. This is an iterative waterfall process, not an agile process.

Dass dabei schnell der Fokus des gesamten Projekts aus den Augen verloren wird, ist da kein Wunder.

In einem agilen Prozess werden idealerweise alle Arten von Arbeiten zur gleichen Zeit beendet. Natürlich dürfte das nur in den wenigsten Fällen tatsächlich perfekt gelingen, sollte aber immer eines der Ziele sein, die man sich für sein Projekt setzt. In jedem Fall sollten Projektteams so viel Arbeit wie möglich ineinander übergehen lassen und darauf verzichten User Stories zu eigenen Mini-Projekten zu machen. Es spricht nichts dagegen, sie mit Notizen für spätere Planungsgespräche zu versehen, solange es dabei bei einem optionalen Schritt bleibt, um zu verhindern, dass der eigene „agile“ Arbeitsprozess zu einem iterativen Wasserfallprozess umgewandelt wird.

Aufmacherbild: Mountain river background with small waterfalls in tropical forest. von Shutterstock / Urheberrecht: Banana Republic images

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -