Software-Entwicklungsmodelle Professionelle
Softwareentwicklung kennt verschiedene Verfahren, um von einer Idee zu
einem lauffähigen Softwareprodukt zu kommen. Ausgangspunkt ist der
Software Life Cycle, der linear, zyklisch oder
spiralförmig durchlaufen werden kann. Die entsprechenden Ansätze
(Treppen-, Wasserfall-, Spiralmodell u. a.) erfordern im Idealfall eine
vollständige Anforderungsdefinition und Spezifikation bevor die nächsten
Phasen begonnen werden. Sie sind deshalb dokumentationslastig. Ein Wasserfall-Modell Das Wasserfallmodell ist eines der ältesten und beschreibt den Entwicklungsprozess als sequentiellen Ablauf von Phasen
Dieses Vorgehen eignet
sich für größere (halbjährliche) Softwareprojekte, bei denen alle Phasen
komplett durchlaufen und erfahrbar gemacht werden sollen. Die notwendige
begleitende Dokumentation und Delegation von Verantwortung verhindern
weitgehend, daß ein schulisches Projekt im Chaos versinkt. Evolutionäres Prototyping Ein neuerer Ansatz ist das evolutionäre Prototyping. Evolutionär bedeutet, daß Software häufig Weiterentwicklungen unterworfen ist und der sachgemäße Umgang mit Änderungen zu einem verbesserten Produkt führen kann. Prototyping liefert frühe Versionen eines Softwaresystems zur Begutachtung durch den Anwender. Es ist geeignet, wenn die vollständigen Anforderungen noch nicht vorliegen und alternative Lösungsmöglichkeiten erprobt werden sollen. Das muß natürlich methodisch erfolgen und keinesfalls als trial-and-error-Murkelei. Evolutionäres Prototyping
Die Zwischenversionen sind Basis für neue, ergänzende Anforderungen. Im Unterricht ist es geeignet für kleine Projekte, die sich in wenigen Tagen mit (geplanten) verschiedenen Versionen durchführen lassen. ----------------
1) vgl. Bachmann, Mala : Software-Qualität, Vorgehensmodelle und
Kostenschätzung. |