Hier gibt es ein Missverständnis: Agile ermutigt die Anforderungen des Projekts nicht, sich zu ändern. Stattdessen können Änderungen vorgenommen werden, ohne dass Arbeit verschwendet oder wichtige Entwicklungsbereiche geopfert werden müssen.
Jedes Ingenieurprojekt unterliegt vier grundlegenden Einschränkungen. Umfang, Kosten, Zeit und Qualität. Wasserfall geht davon aus, dass diese statisch sein werden. Das ist eine falsche Annahme; Eine oder mehrere dieser Änderungen ändern sich IMMER. Scope Creep, gekürzte Budgets und andere "unbekannte Unbekannte" stören IMMER ein Projekt und ändern die Einschränkungen. Waterfall antizipiert dies nicht. Wenn dies geschieht, ändert sich das Projekt auf unerwünschte Weise. Wichtige Funktionen, die noch nicht hinzugefügt wurden, gehen verloren oder sind schnell erledigt, oder die Veröffentlichung muss verschoben werden.
Im Gegensatz dazu lässt Agile zu, dass sich Einschränkungen ändern, und erwartet dies tatsächlich. Dies geschieht durch Arbeiten in kleinen, nutzbaren Stücken, die den Prioritäten des Eigentümers entsprechen, und daher sind die Stücke für den Projekteigner idealerweise sofort nützlich. Reduziert somit die Exposition gegenüber dem Unbekannten, indem in einem Zeitraum, in dem die Unbekannten groß sind, keine großen Pläne gemacht werden. Wenn sich die Zeitachse ändert, können Teams hinzugefügt werden oder weniger wichtige Funktionen "freigegeben" werden, und das System, das das Team bereits erstellt hat, bleibt davon unberührt.
Es bietet auch bessere Schätzungen des Zeit- und Kostenaufwands, um den angegebenen Umfang in der erforderlichen Qualität zu produzieren. Die Leute sind notorisch schlecht darin, große Jobs zu schätzen. Es braucht eine Menge Erfahrung und eine Menge Vorausberechnung, um es richtig zu machen. Im Gegensatz dazu beurteilen die Menschen im Allgemeinen gut, was sie an einem oder zwei Tagen oder in einer oder zwei Wochen leisten können. Dies führt schnell zu einem stabilen Zustand, in dem Sie die Zeit und die Kosten der noch zu erledigenden Arbeit auf der Grundlage Ihres historischen Tempos mit einem angemessenen Maß an Genauigkeit hochrechnen können.
Was die Definition von Endpunkten angeht, haben Sie Recht. Ein agiles Projekt kann für immer weitergehen. Dies gilt jedoch auch für das traditionelle SLDC. Der Kunde kommt oft mit mehr Geld und einer Wunschliste mit Upgrades zurück. Der Unterschied besteht darin, dass bei Betrachtung des gesamten Projekts keine klare Grenze zwischen "Analyse", "Design", "Entwicklung" und "Wartung" besteht. alles geschieht Stein für Stein, Sprint für Sprint. Wenn der Eigentümer das Projekt irgendwann als "erledigt" bezeichnen möchte, kann er dies und erhält die Summe der von ihm bezahlten "Bausteine" in einer soliden "Mauer". Es ist möglicherweise nicht so hoch oder nicht so weit wie ursprünglich geplant, aber es ist fest verankert, erledigt die Aufgabe und kann zu einem späteren Zeitpunkt mit einem Minimum an Abriss hinzugefügt werden.