VO 5 – Design Part II

By resign

Inwieweit funktioniert das Modell der „klassischen Softwareentwicklung“ in der Praxis? Kann Software wirklich nach dem Wasserfallmodell (Pflichtenheft -> Spezifikation -> Grobentwurf -> Feinentwurf -> Implementierung -> Test -> Revision) entwickelt werden?

Design ist ein Prozess, bei dem selbst neue Probleme entstehen – dieser steht also im direkten Widerspruch mit obigem Lehrbuchdenken. Viel mehr könnte Softwareentwicklung als Kreislauf gesehen werden, bei dem nach der Analyse wiederkehrende Stationen (Design -> Implementierung -> Test -> Evaluation -> Design) auftreten. Jedoch muss auch hier eine erfolgte Implementierung nicht sofort in die Testphase führen, wenn grundlegende Versäumnisse im Designprozess passiert sind.

Ein weiteres Alternativmodell sieht die Lösung eines Problems in einer unauflöslichen Verbindung aus Analyse, Synthese und Evaluation. Verglichen mit einem Bauprojekt in der Architektur sind in einer idealen (was ist das eigentlich?) SWE zu Beginn Designer zuständig (unter Beisein der Programmierer/Entwickler), dann wird implementiert (immer noch unter den Argusaugen der Designer) – Damit wird erst dann begonnen, wenn der als Konzept bereits ein gut durchdachtes Design zugrunde liegt. Zu allem Überdruss ist jedoch auch Design nicht hundertprozentig „testbar“, oft zeigen sich erst in Verwendung Lücken und Mängel.

Primary Generators sind fixe Paradigmen, die jedes Individuum (egal in welcher Branche) hat. Fällt ein Stichwort für eine zu entwickelnde Software, oder allgemeiner, für ein zu lösendes Problem, schleichen sich sofort gewisse Vorstellungen von der Realisierung ein. Das ist an sich nicht unbedingt etwas schlechtes, jedoch verleiten diese Guidelines dazu, das Problem-lösen mit Scheuklappen und Tunnelblick anzugehen. „kill your darlings“ ist ein Ausspruch aus der Spieleentwicklung – welcher besagt, dass es besser ist, seine Prizipien immer wieder zu überdenken und infrage zu stellen – im Dienste eines besseren Produkts.

Eine Antwort schreiben