Artikel versenden

Inkrementelles und iteratives Vorgehen




 

// /

In Diskussionen gewinne ich immer wieder den Eindruck, dass „iterativ“ und „inkrementell“ synonym verwendet werden, zumindest aber die eigentliche Bedeutung von „iterativ“ nicht vollständig verstanden wird. Das Langenscheidt Fremdwörterbuch definiert „Inkrement“ und „Iteration“ wie folgt:

  • „In·kre’ment, das; -s,-e kleine Stufe der Zunahme“
  • „Ite·ra·ti’on, die; -,-en Verfahren der schrittweisen Annäherung an eine exakte Lösung“

Dementsprechend bedeutet ein iteratives Vorgehen etwas anderes als ein inkrementelles. Bei ersterem gibt es von Anfang an einen Blick auf und einen Eindruck vom Gesamtsystem. Die zunächst grobe Ausgestaltung wird dann iterativ überarbeitet, verfeinert und ergänzt. Das Gesamtziel gerät dabei aber nie aus dem Blick.

Bei einem inkrementellen Vorgehen wird hingegen eine Basis Schritt für Schritt um Imkremente ergänzt. Das Gesamtsystem existiert dann erst, wenn alle Inkremente erstellt worden sind. Hier besteht die Gefahr, dass durch den Wunsch nach immer mehr Funktionalität kein Ende gefunden wird.

Alistair Cockburn verdeutlicht den Unterschied zwischen beiden Begriffen anhand einer fiktiven Entstehungsgeschichte des Gemäldes „Die Bauernhochzeit“ von Pieter Brueghel: Incremental means adding, iterative means reworking. Alistair Cockburn übernimmt dabei die Veranschaulichung von Jeff Patton, der die Idee auf den XP-Days präsentiert hat. Dieser beschreibt die Unterschiede und die Synthese beider Begriffe ausführlich in seinem Blog: „Don’t know what I want, but I know how to get it.

In den Beiträgen wird deutlich, dass ein iteratives Vorgehen bedeutet, vorhandene Bestandteile zu überarbeiten und zu verfeinern: Das Grundgerüst ist von Anfang an vorhanden und wird im Laufe der Iterationen verbessert. Dies entspricht der Forderung von Kent Beck: „The rules of the Planning Game state that the result of the first iteration must be a functional skeleton of the system as a whole.“ (Extreme Programming Explained, Addison-Wesley, 2000) Bei einem inkrementellen Vorgehen ist dies nicht zwangsläufig so, und es besteht damit die Gefahr, das eigentliche Ziel aus den Augen zu verlieren.

Ein Projekt, auch gerade eines, das mit agilen Methoden durchgeführt wird, besteht immer aus iterativen und inkrementellen Schritten. Dies und die damit verbundenen Unterschiede sollte man nicht aus den Augen verlieren.

 

 

Quelle Foto: © r0b_ – Fotolia.com

| 1 Kommentar

 
Top | Impressum | Datenschutz