SDLC - Iteratives inkrementelles Modell

In einem iterativen inkrementellen Modell wird zunächst eine Teilimplementierung eines Gesamtsystems so konstruiert, dass es sich in einem lieferbaren Zustand befindet. Erhöhte Funktionalität wird hinzugefügt. Eventuelle Mängel aus der Vorlieferung werden behoben und das Arbeitsprodukt geliefert. Der Vorgang wird solange wiederholt, bis die gesamte Produktentwicklung abgeschlossen ist. Die Wiederholungen dieser Prozesse werden als Iterationen bezeichnet. Am Ende jeder Iteration wird ein Produktinkrement geliefert.

Iterationen

Iteratives inkrementelles Modell - Stärken

Die Vorteile oder Stärken des iterativen inkrementellen Modells sind:

  • Sie können zuerst priorisierte Anforderungen entwickeln.

  • Die Erstlieferung des Produkts erfolgt schneller.

  • Kunden erhalten frühzeitig wichtige Funktionen.

  • Senkt die anfänglichen Lieferkosten.

  • Jede Version ist ein Produktinkrement, sodass der Kunde jederzeit ein funktionsfähiges Produkt zur Hand hat.

  • Der Kunde kann zu jedem Produktschritt eine Rückmeldung geben und so Überraschungen am Ende der Entwicklung vermeiden.

  • Anforderungsänderungen können problemlos berücksichtigt werden.

Iteratives inkrementelles Modell - Schwächen

Die Nachteile des Iterativen Inkrementellen Modells sind:

  • Erfordert eine effektive Planung von Iterationen.

  • Erfordert ein effizientes Design, um die erforderliche Funktionalität zu gewährleisten und spätere Änderungen vorzusehen.

  • Erfordert die frühzeitige Definition eines vollständigen und voll funktionsfähigen Systems, um die Definition von Inkrementen zu ermöglichen.

  • Gut definierte Modulschnittstellen sind erforderlich, da einige lange vor anderen entwickelt werden.

  • Die Gesamtkosten des Gesamtsystems sind nicht niedriger.

Wann ist ein iteratives inkrementelles Modell zu verwenden?

Iteratives inkrementelles Modell kann verwendet werden, wenn -

  • Die meisten Anforderungen sind im Vorfeld bekannt, werden sich jedoch voraussichtlich im Laufe der Zeit weiterentwickeln.

  • Die Anforderungen werden priorisiert.

  • Grundlegende Funktionen müssen schnell bereitgestellt werden.

  • Ein Projekt hat lange Entwicklungszeiten.

  • Ein Projekt hat neue Technologien.

  • Die Domain ist neu im Team.