Warum frühzeitige Tests in der Softwareentwicklung so wichtig sind

Das Testen neuer Entwicklungsstände gehört zu den Routinearbeiten in der Softwareentwicklung. Dessen Bedeutung sollte aber auf keinen Fall und zu keinem Zeitpunkt unterschätzt werden. Nach der 1:10:100-Regel vervielfachen sich die Kosten einer Fehlerbehebung mit dem Zeitpunkt der Entdeckung um den Faktor 10 (Erklärungen der 1:10:100 Regel in englisch: 1, 2, 3).

1: Bei Entdeckung durch den Programmierer selbst
Wird ein Fehler noch während eines Tests durch den Programmierer selbst entdeckt, so kann er meist schnell behoben werden. Der zusätzliche Aufwand beschränkt sich auf die Fehlerbehebung selbst.
10: Bei Entdeckung durch einen Tester
Wird der Fehler erst durch einen Tester entdeckt, wenn der neue Entwicklungsstand bereits auf einem Testsystem läuft, steigt bereits der Aufwand. Der Tester wird den Fehler dokumentieren, einen entsprechenden Vorgang in der Aufgabenverwaltung/im Bugtracker anlegen bzw. wiedereröffnen, den Entwickler darauf aufmerksam machen, dieser wird den Fehler beheben, der Stand auf dem Testserver wird noch einmal aktualisiert, es erfolgt ein weiterer Test auf dem Testserver, bevor der neue Stand live eingespielt werden kann. Womöglich kann hierdurch auch noch eine Verschiebung des GoLive-Termins entstehen, was nicht nur den Produktmanager besonders ärgern dürfte.
100: Bei Entdeckung im Live-Betrieb
Am unangenehmsten und kostspieligsten ist der Fall, wenn der Fehler erst im Live-Betrieb bekannt wird, womöglich noch durch den Hinweis von einem oder mehreren Nutzern. Neben den Kosten durch die aufwändige Fehlerbehebung, wie sie auch bei der Entdeckung auf dem Testsystem anfallen, muss jetzt zusätzlich extra für diesen Fehler der Stand auf dem Live-System aktualisiert werden. Zusätzlich gefährdet solch ein Fehler das Image der Software, sorgt für Verärgerung bei den Nutzern und kann auch Umsätze verhindern, wenn umsatzrelevante Funktionen nicht mehr genutzt werden konnten.
Unter anderem sind daher Tests in diesen Stadien der Softwareentwicklung äußerst sinnvoll:
  • Abschließende Prüfung der Aufgaben vor Übergabe an die Programmierer
  • Tests während der Entwicklung
  • Tests nach Abschluss der Entwicklung
  • Tests auf dem Testserver
  • Tests auf dem Liveserver

Wie steht es bei euch mit dem Testverhalten? Habt ihr entsprechende Vorkehrungen getroffen, um mögliche Fehler frühzeitig aufzudecken?

Share

Foto: von ern

Dir hat dieser Beitrag gefallen? Ich freue mich über einen Kommentar. Du kannst auch meinen RSS-Feed abonnieren oder mir auf Twitter folgen: @pherwarth.

Über Paul Herwarth von Bittenfeld
Lean & Agile IT-Unternehmer. Partner bei //SEIBERT/MEDIA & Founder von Rhein-Main-Startups.com. Weitere Erfahrungen in der Geschäftsführung von TwentyFeet GmbH, Gartentechnik.com GmbH, new-in-town GmbH und naturkostaktiv GmbH sowie hunderten Kundenprojekten gesammelt.

6 Responses to Warum frühzeitige Tests in der Softwareentwicklung so wichtig sind

  1. Pingback: Warum das Surfen mit unterschiedlichen Browsern sinnvoll ist « Produktmanagement und Vermarktung von Internet-Anwendungen

  2. Pingback: Erfordert agile Softwareentwicklung keine Disziplin? « Produktmanagement und Vermarktung von Internet-Anwendungen

  3. Pingback: Scrum = Scrum, sagt Ken Schwaber « Produktmanagement und Vermarktung von Internet-Anwendungen

  4. Pingback: //SEIBERT/MEDIA Weblog » Blog Archiv » Agile Software-Entwicklung erfordert viel Disziplin

  5. Pingback: //SEIBERT/MEDIA Weblog » Blog Archiv » Software-Tests: Notwendigkeit und Arten des Testens

  6. Pingback: Weshalb frühzeitige Software-Tests viel Geld sparen | Rhein-Main Startups - das Magazin

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: