Lebenszyklus-Eigenschaften

Adaptive Software Development Lifecycle weist sechs grundlegende Merkmale auf:

  • Mission konzentriert
  • Funktionsbasiert
  • Iterativ
  • Time-Boxed
  • Risiko getrieben
  • Toleranz ändern

In diesem Kapitel werden Sie diese sechs Merkmale der adaptiven Softwareentwicklung verstehen.

Mission konzentriert

Bei vielen Projekten ist die Gesamtaufgabe, die das Team leitet, gut formuliert, obwohl die Anforderungen zu Beginn des Projekts möglicherweise ungewiss sind. Leitbilder sind Leitfäden, die zu Beginn der Erforschung anregen, aber im Verlauf eines Projekts einen engen Fokus haben. Eine Mission bietet eher Grenzen als ein festes Ziel. Mission Statements und die Diskussionen, die zu diesen Statements führen, liefern Anweisungen und Kriterien für kritische Projektkompromissentscheidungen.

Ohne eine klare Mission und eine konstante Missionsverfeinerungspraxis werden iterative Lebenszyklen zu oszillierenden Lebenszyklen, die ohne Fortschritt in der Entwicklung hin und her schwingen.

Funktionsbasiert

Der Adaptive Software Development Lifecycle basiert auf Anwendungsfunktionen und nicht auf Aufgaben. Features sind die Funktionen, die während einer Iteration basierend auf den Prioritäten des Kunden entwickelt werden.

Features können sich über mehrere Iterationen entwickeln, wenn die Kunden Feedback geben.

Die Anwendungsfunktionen, die dem Kunden nach der Implementierung direkte Ergebnisse liefern, sind primär. Ein kundenorientiertes Dokument wie ein Benutzerhandbuch wird ebenfalls als Merkmal betrachtet. Die anderen Dokumente wie das Datenmodell, auch wenn sie als Liefergegenstände definiert sind, sind immer zweitrangig.

Iterativ

Der Adaptive Software Development Lifecycle ist iterativ und konzentriert sich auf häufige Veröffentlichungen, um Feedback zu erhalten, das resultierende Lernen zu verarbeiten und die richtige Richtung für die weitere Entwicklung festzulegen.

Time-Boxed

Im Adaptive Software Development Lifecycle sind die Iterationen zeitlich begrenzt. Man sollte jedoch bedenken, dass es beim Time-Boxing in der adaptiven Softwareentwicklung nicht um Fristen geht. Es sollte nicht verwendet werden, um das Team stundenlang dazu zu bringen, eine kollaborative Umgebung in Frage zu stellen oder Kompromisse bei der Qualität der zu erbringenden Leistungen einzugehen.

In der adaptiven Softwareentwicklung wird das Time-Boxing als eine Richtung betrachtet, um schwierige Kompromissentscheidungen nach Bedarf zu fokussieren und zu forcieren. In einer unsicheren Umgebung, in der die Änderungsraten hoch sind, muss es eine periodische Forcierungsfunktion geben, z. B. eine Timebox, um die Arbeit abzuschließen.

Risikogetrieben

In der adaptiven Softwareentwicklung werden die Iterationen durch die Identifizierung und Bewertung der kritischen Risiken gesteuert.

Änderungstolerant

Die adaptive Softwareentwicklung ist änderungstolerant und betrachtet Änderungen als die Fähigkeit, Wettbewerbsvorteile zu nutzen, jedoch nicht als Entwicklungsproblem.