Entwicklung

Agile - das Aus für Wasserfall?

15.03.2013

Wo Wasserfall trotzdem gut funktioniert

Am Anfang jeder Softwareentwicklung stehen die Anforderungen. Waterfall funktioniert genau dann sehr gut, wenn Endanwender oder Produkt-Management formalisierte Anforderungen auf einer halbwegs konstanten Basis anbieten können. Dabei muss es sich nicht einmal zwingend um Modelle aus der Unified Modeling Language (UML) oder aus einer anderen standardisierten Modellierungssprache handeln. Es sollte lediglich um Anforderungen gehen, die bis zu einem bestimmten Grad strukturiert sind. Ein derart einheitlicher Informationsfluss wird zur verlässlichen Größe und führt auch zu ziemlich genau planbaren Zeiträumen im Entwicklungsprozess.

Seine eigentliche Stärke spielt Waterfall aber an anderer Stelle aus. Nämlich dort, wo die zwingend erforderlichen Eigenschaften einer Software große Bedeutung für ihre systemweiten Fähigkeiten haben, so etwa bei der Performance, Sicherheit oder Zuverlässigkeit. Also dort, wo eine sorgfältige Balance oder Abstimmung notwendig ist, um den nichtfunktionalen Anforderungen zu begegnen. An solchen Stellen ist es immer eine gute Idee, die Anforderungen aufzuschreiben und auf einer formalisierten Grundlage mit den Projektbetroffenen vorab zu diskutieren. Geschieht dies nicht, ist die Gefahr einer unerwarteten Anpassung der Architektur während des laufenden Prozesses oder von übersehenen Systemanforderungen einfach zu groß.

Wenn Systemeigenschaften wie Performance, Sicherheit oder Zuverlässigkeit hohen oder sehr restriktiven Standards begegnen, etwa bei Systemsoftware oder Kommunikationslösungen, gibt es ebenfalls keine Alternative. An vielen Stellen im Geschäftsleben sind formalisierte Dokumentationen erforderlich, um den üblichen Standards verlässlich zu genügen. Daher sollte niemand grundsätzliche Bedenken gegenüber unnötigem "Papierformalismus" und Methoden wie Waterfall hegen. In manchen Projekten funktioniert ein agiler Ansatz ganz einfach nicht. (ph)

Wann Waterfall besser ist

Anton Dechko ist Director Business Development von SaM Solutions, einem in Gilching bei München ansässigen Anbieter von Outsourcing-Dienstleistungen für die Softwareindustrie. Einige der erfolgreichsten Entwicklungsprozesse von SaM wurden unter Waterfall realisiert.

Dechko meint: "Bei komplexen Inhalten und Festpreisprojekten ist Waterfall die bessere Wahl. Schon am Anfang definiert man in klaren Kriterien, was am Ende geliefert wird. Agile Methoden eignen sich dagegen besonders für kleine und mittlere Unternehmen, die eine partnerschaftliche, weniger formalisierte Beziehung mit ihrem Entwicklungspartner anstreben."

Bilder/Grafiken: Fotolia, Marvellous World, SaM Solutions