Software-Fehler minimieren will jeder. Nicht jeder Fehler hat die gleichen Auswirkungen auf Kosten und Termine. Ein wichtiger Faktor ist, in welcher Entwicklungsphase der Software-Fehler gefunden wird. Im Grundsatz gilt: Je früher ein Fehler gefunden wird, desto einfacher und günstiger ist dessen Behebung.

Software-Fehler: V-Modell
Am Beispiel des V-Modells wird klar: Erkennen Sie einen Fehler während der Systemanforderungsanalyse, hat dies meist keine weitreichenden Konsequenzen. Es braucht Denkarbeit, die Fehlerbehebung geschieht auf Papier. Der Aufwand beträgt einige Stunden.

Ein Software-Fehler bei der Abnahme kann fatal sein. Erfüllen Sie beispielsweise die Anforderungen an die Performance (Antwortzeiten) nicht, sind folgende Schritte nötig:
- Überarbeitung System-Architektur, System-Entwurf, Software-Architektur
- Überarbeitung Software-Entwurf (Code anpassen)
- Durchführen der Tests auf allen Stufen
Projektverzögerung durch Software-Fehler
Ein solcher Software-Fehler kann eine Projekt-Verzögerung von Wochen oder gar Monaten verursachen. Das hat fatale Folgen. Darum lohnt es sich, während den sogenannten Papier-Phasen des Projektes Reviews durchzuführen. Die zusätzliche Zeit, die Sie aufwenden, ist optimal investiert. Dadurch können Sie teure Fehler in späteren Phasen minimieren.
Falls Sie die kritischen Faktoren erst gegen Ende der Entwicklung prüfen können, stellt dies ein erhebliches Risiko dar. Ziel ist es, die kritischen Faktoren möglichst früh zu verifizieren. Dazu gibt es folgende Möglichkeiten:
- Verwenden Sie ein anderes Entwicklungsmodell (z.B. Scrum). Dies funktioniert nicht von heute auf morgen, da in ihrem Unternehmen das entsprechende Wissen vorhanden sein muss.
- Realisieren Sie einen Prototyp, der vergleichbar mit der realen Anwendung ist. Dies führt in der Regel zu Mehraufwand.
- Teilverifizierung in frühen Testphasen (z.B. Integrationstest). Der Mehraufwand ist gering. Sie können nicht das ganze System prüfen.

Optimale Software-Entwicklung
Für die optimale Software-Entwicklung sind folgende Schritte nötig:
- Frühzeitiger Einbezug der relevanten Personen (je nach Phase verschieden)
- Durchführung von Reviews
- Analyse der möglichen Risiken
- Minimierung gewisser Risiken: nicht jedes Risiko muss minimiert werden, ein Risiko kann bewusst in Kauf genommen werden.
Auf diese Weise können grobe Fehler zwar nicht verhindert, aber grösstenteils minimiert werden.