Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv
 

Ein weit verbreiteter Fehler in Softwareprojekten ist die späte Einbindung des Testmanagements:

Testanalysten

Werden die Testanalysten (Business Analysten mit Testausbildung) von Anfang an eingebunden, dann verstehen sie ihr Testobjekt besser, da sie bei dessen Konzeption und Entstehung beteiligt sind. Sie unterstützen die anderen Stakeholder zu testbaren Anforderungen zu kommen. Damit leisten sie einen wichtigen Betrag zur Fehlervermeidung.
Kenner des CMMI Standards wissen warum: Dort wird zwischen „Validation“ und „Verification“. Während sich Validierung darum kümmert, dass die richtige Lösung gebaut wurde, kümmert sich Verifikation darum, dass die Lösung richtig gebaut wurde.
Wird das Testmanagement und die Testspezialisten früh in das Projekt eingebunden, dann schauen weitere Personen auf das Thema Validierung.
Die Vermeidung von Abweichungen (Softwarefehler) ist das Hauptziel der Testmanagment- Einbindung (etwa durch Tester mit einer Doppelausbildung als Businessanalyst und Testanalyst) in dieser Phase. Je später ein Fehler gefunden wird, umso teurer wird er. Das ist inzwischen eine Binsenweisheit – trotzdem werden Tester oft viel zu spät in die Projekte eingebunden.
Sind die Tester in der Anforderungsphase eines Projekts beteiligt lernen sie außerdem aus erster Hand, welches die wichtigsten und kritischsten Anforderungen aus Kundensicht sind. Dies gibt wertvolle Hinweise auf eine spätere Priorisierung und Abarbeitungsreihenfolge der Testfälle. Weniger wichtige Bereiche werden nicht über-testet und sehr wichtige Bereiche nicht unter-testet.
In einigen Unternehmen werden Tester nur als Empfänger von Anforderungen gesehen. Damit können sie zwar eine Verifikation des Produkts durchführen - der Gedanke der Validierung fällt aber unter den Tisch. Werden Tester erst eingebunden, wenn die Anforderungen schon fertig sind, ist es oft schon zu spät: Die Entwicklung hat mit dem Design (bzw. schlimmer schon mit der Umsetzung) begonnen, bevor sichtbar wird, das einzelne Anforderungen ungenau, unvollständig oder missverständlich sind. Änderungsanforderungen (Change Requests), welche viel später gestellt werden erzeugen hohe Mehrkosten. Bereits falsch erstellte Artefakte (Designs, Code, Testfälle, Testdaten, etc.) müsden nachträglich geändert werden. (Im Übrigen sind Dokumentationen, Testfälle, Testdaten, usw. oft Artefakte, welche nicht die die Changerequest-Kosten hineingerechtnet werden, so dass diese dann oft künstlich verbilligt werden. Dies tritt insbesondere dann auf, wenn Teile der Testleistung nicht vom Projekt, sondern quasi zusätzlich über „eh da“ Kosten durch den Auftraggeber erbracht werden.)

Es gibt Untersuchungen (Software Reliability: Achievement and Assessment, 1987) die belegen, dass eine Abweichung die erst im Systemtest gefunden wird den fünfzigfachen Aufwand einer Abweichung erzeugt, die durch das frühe Einbinden des Testteams vermieden worden wäre - und dies beinhaltet nur „Fehler“ und nicht die zusätzlichen Kosten durch vermeidbare Änderungsanforderugen.)

Testmanager

Die frühe Einbindung des Testmanager unterstützt die Projektplanung und die Projektinitialisierung auf Testseite. Dies ist insbesondere dann relevant, wenn große Teile der Testaufgabe durch den Auftraggeber durchgeführt werden und damit nicht direkt der Steuerung des Projektmanagers unterstehen.
Die mangelnde Steuerbarkeit des Tests führt häufig zu erhöhten Risiken bezogen auf das Projektziel. Tests werden zu spät eingeplant, bzw. am Anfang nur ungenügend durchgeführt. Dies führt zwangsläufig zu Problemen bei der Abnahme. Ein Testmanager kann direkt mit dem Auftraggeber eine Teststrategie (Ergebnistyp Testkonzept) entwickeln und damit früh transparent machen, wenn im Testumfeld etwas schief läuft.