Methoden des Projektmanagements in moderner Softwareentwicklung
t
Fehlerentdeckung
Analyse
Betrieb
Fehlerentdeckung
Spezifikation
Installation
Fehlerentdeckung
Entwurf
Fehlerentdeckung
Codierung
Eingabe
Fehlerentdeckung
Integration
Modultest
Übersetzung
Abbildung 2 - Entdeckung von Fehlern auf derselben Abstraktionsebene (vgl. [LUD07])
Das Ausmaß, sprich die Kosten für die Beseitigung eines solchen Fehlers sind unverhältnismäßig höher, da alle Aktivitäten zwischen der Entstehung des Fehlers und seiner Entdeckung und Beseitigung auf dem fehlerhaften Zwischenergebnis aufgebaut haben und somit ebenfalls nicht mehr korrekt sind. So müssen im o. g. Beispiel eines Analysefehlers, der im Betrieb entdeckt wird, neben der Korrektur der Analyse auch die Spezifikation, der Entwurf, die Codierung, die Eingabe, die Übersetzung, die dazugehörigen Modultests, die Integration und Installation entsprechend überarbeitet oder neu durchgeführt werden. Durch die Fehlerbeseitigung können jedoch neue Fehler (in den reparierten Bereichen) entstehen oder zuvor funktionierende Module negativ beeinflusst werden und dort ebenfalls Änderungen indizieren. Die Kosten der Fehlerbeseitigung steigen exponentiell zwischen dem Entstehen und der Beseitigung des Fehlers. Aus diesem Grunde sind dringend entsprechende Gegenmaßnahmen zu treffen um die Identifikation von Fehlern an einem möglichst frühen Zeitpunkt im Projektverlauf
zu verlagern. Methoden zur Erreichung dieses Ziels werden im
Abschnitt „9.3 Risikomanagement“ dargestellt. Im
Bezug
auf
Kostenminimierung
spielt
mangelnde
Qualität
eines
Softwareprodukts besonders im Bezug auf Änderbarkeit und Wartbarkeit eine besondere Rolle. Ludewig und Lichter stellen 2007 fest, dass der Aufwand für die Wartung eines Softwareprodukts, d. h. Anpassung an aktuelle Rahmenbedingungen, Verbesserungen und Korrekturen, ebenso hoch bis doppelt so hoch ist, wie die Entwicklung selbst (vgl. [LUD07], siehe Abbildung 3). Platz ging 1983 sogar davon aus Seite 14