digitalien.org — Stefan Knecht

Inkrementell? Iterativ?​

Jeff Patton brachte das zeitlos schöne Beispiel der Entstehung eines Ölgemäldes. Malen nach Zahlen oder kreativer Prozess?

Zwei zentrale Begriffe lassen sich so besser begreifen: was ist iterativ, was bedeutet inkrementell?

Jeff Patton
Jeff Patton
Patton, Jeff. 2014. User Story Mapping: Discover the Whole Story, Build the Right Product. First edition. Beijing ; Sebastopol, CA: O’Reilly.

Iterativ ist empirisches Handeln

Inkrementelles Vorgehen steckt in deterministischer Planung. Es gibt einen detaillierten Masterplan, der umgesetzt wird. Am Ende ist alles fertig und alle sind zufrieden.

Iterativ ist empirisches Handeln: in vielen kleinen Schritten wird verbessert, geprüft, validiert … bis ‘es’ gut genug ist.

Wird ein Bild inkrementell oder iterativ gemalt?

Vor dem ersten Pinselstrich steht die Idee des Malers: »Eine Frau blickt mich direkt an, im Hintergrund ist Landschaft«.

Hat der Künstler das fertige Bild einer Mona Lisa im Kopf und malt es Pixel für Pixel aus dem Gedächtnis? Oder nähert er sich an: skizziert, übermalt, wählt andere Elemente? Verwirft womöglich Entwürfe und fängt nocheinmal von vorne an?

Inkremente haben ein vollständiges Zielbild

Wie bei einem Mosaik wird das fertige Bild aus eindeutig definierten Einzelteilen zusammengebaut. Alle Anforderungen, alle requirements beschreiben in ihrer Summe das fertige Produkt. Es fehlt nichts. Das Zielbild wird exakt und ohne Abweichung erreicht. 

Ein bisschen wie ‘Malen nach Zahlen’. Nicht wirklich kreativ und komplett determiniert von den Vorgaben. So sieht es dann auch aus.

Übertragen auf ein Softwareprojekt kann perfekte Planung geschehen: geliefert wird in scope, in time, in budget. Diese objektive Qualität bedeutet, alle zuvor restlos bekannten Anforderungen konform zu erfüllen.

Wenn die Welt, wenn Anforderungen und Randbedingungen sich zwischenzeitlich ändern? Egal. Geliefert wird, was vereinbart ist.

Iterationen verbessern in kleinen Schritten

Iterationen skizzieren und implementieren eine grobe Version. Dann verbessern sie die Produktqualität in kleinen Schritten. Die vage Idee experimentiert mit Lösungen bis eine Umsetzung die Bedingungen hinreichend erfüllt. 

Mit Iterationen wird die Qualität optimiert bis Benutzer zufrieden sind.

Das Ziel ist erreicht, das Produkt ‘gut genug’ ist, um als minimum viable product, MVP verprobt zu werden. 

So viel nötig ist — und nicht mehr.