Testmanagement – Fluch oder Segen?

Testmanagement wird nicht von jedem Unternehmen beziehungsweise von jedem Projekt als Mehrwert gesehen. Warum ist das so? Warum gestalten sich Testmanagement-Projekte in der Regel schwierig?

Haben Sie schon einmal vergleichbare Aussagen gehört:

  • Testen ist nur etwas für Feiglinge
  • Wir haben keine Testumgebung, wir entwickeln und testen direkt in Produktion
  • Dokumentation und Testfälle gibt es nicht, bei uns ist Frau/Herr Spezialist für das Thema, sie/er testen das schon
  • Den Fehler in der Produktion kann ich mir gar nicht erklären
  • Der Go-Live ist in der nächsten Woche, wir haben jetzt keine Zeit mehr umfangreich zu testen
  • Ein kurzer Antest reicht, den Rest korrigieren wir dann in der Praxis
  • In Scrum gibt es ja kein Testmanagement mehr

Diese Aufzählung lässt sich beliebig fortsetzen. Häufig entscheiden sich Projektverantwortliche für den termingerechten Go-Live und verzichten auf qualitative Lösungen am Kunden.

Das Testmanagement ist vergleichbar mit der Planprüfung bei Bauprojekten. So nimmt beispielsweise ein Statiker im Gebäudebau eine wichtige koordinierende und kommunikative Aufgabe ein und unterstützt den Bauherren bei der Abnahme von Bauprojekten.

Um den hohen Anforderungen des Kunden, aber auch der internen Mitarbeiter, an eine neue Lösung in Digitalisierungsprojekten gerecht zu werden und die Akzeptanz für die Lösung frühzeitig auf ein hohes Niveau zu bringen, ist das Testen in jeder Entwicklungsstufe alternativlos - unabhängig davon, nach welchem Vorgehensmodell die Lösungen entwickelt werden.

Agiles Testmanagement

In agilen Frameworks, wie zum Beispiel Scrum oder Kanban, wird das Testmanagement beziehungsweise das Testen nicht explizit adressiert. Es wird vielmehr vorausgesetzt, dass dies durch das Team mit abgedeckt wird. Das Testmanagement ist also untrennbar mit der Entwicklung verwoben und keine eigene Disziplin bzw. Rolle.

Es mag zwar Entwickler geben, welche mit einem hohen Maß an Qualität an die Entwicklung ihrer Lösungen gehen, aber aus eigenen Erfahrungen bleibt es häufig bei kurzen Entwicklertests, bevor die User-Story zur Abgabe an den Product Owner übergeben wird.

Auch in agilen Projekten empfehlen wir dem Product Owner, mindestens einen Spezialisten in seinem Team zu etablieren, welcher seinen Entwicklungsfokus auf die Bereiche Testmanagement, Qualitätssicherung, Fach- und Akzeptanztests sowie die Anforderungsgetriebene Entwicklung legt.

Denken Sie nur an das Beispiel des Bauprojektes: Der Bauherr würde sich doch niemals nur auf die auf die Ratschläge der Handwerker verlassen, was das Thema Statik angeht!

Testgetriebene oder besser: Anforderungsgetriebene Entwicklung

Häufig wird in der Entwicklung neuer Lösungen nach dem Prinzip der testgetriebenen Entwicklung vorgegangen. Bei der testgetriebenen Entwicklung erstellt der Entwickler Software- und funktionale Tests konsequent vor der eigentlichen Entwicklung der zu testenden Software.

Haupteinwand gegen die testgetriebene Entwicklung ist der vermeintlich hohe Aufwand. Die beschriebene Idee macht sich aber zunutze, dass der gedankliche Aufwand, der beim Programmieren in die Beschreibung der Lösung investiert wird und den Hauptteil der Programmierzeit ausmacht, mit geringem Mehraufwand durch die Erstellung weniger Testzeilen ersetzt werden kann. Häufig führt die gedankliche Strukturierung im Vorfeld darüber hinaus zu höherer Codequalität.

Bei dem klassischen Testmanagement werden Tests parallel zur und unabhängig von der zu testenden Lösung entwickelt oder sogar nach ihr. Dies führt oft dazu, dass die gewünschte und erforderliche Test- und Anforderungsabdeckung nicht erzielt wird.

Hier hilft der strategische Umgang mit Anforderungen und verknüpften Testobjekten und die Auswertung der Anforderungsabdeckung vor dem Produktivgang einer neuen Lösung.

Bei der anforderungsgetriebenen Entwicklung ist es notwendig, dass die für den späteren Anwender der Lösung bzw. den Stakeholder relevanten Anforderungen (funktional und nicht-funktional) durch entsprechende Testfälle gemäß der aufgestellten Test-Strategie erfolgreich getestet und dokumentiert wurden. Als Auswertungsmöglichkeit kann dazu ein Anforderungsabdeckungs-Bericht eingesetzt werden.

Zur Verwendung des Anforderungsabdeckungs-Berichts ist es notwendig, die folgenden Objekte für die neue Lösung zu definieren:

  • Anforderung: Beschreibt die funktionale und nicht-funktionale Anforderung des Stakeholders.
  • Testfall: 1-n Testfälle müssen in der Anforderung verlinkt werden - die Testfälle stellen sicher, dass bei positiven Testergebnissen die Anforderung korrekt entwickelt wurde.
  • Testplan: Die Testfälle müssen einem Testplan zugewiesen werden. Über den Testplan kann nach der Testausführung die Auswertung im Anforderungsabdeckungs-Bericht erfolgen.
  • Testausführung beziehungsweise der Testnachweis: In der Testausführung bzw. dem Testnachweis wird dokumentiert, wann der Test konkret mit welchem Ergebnis durchgeführt wurde.

Insbesondere bei agilen Projekten spielt ein professionelles Testmanagement eine wichtige Rolle für den erfolgreichen Ablauf des gesamten Produktentwicklungsprozesses. So unterstützt der „Spezialist für das Testmanagement“ aktiv den Product Owner bei der erfolgreichen und wirtschaftlich sinnvollen Umsetzung einer qualitativ hochwertigen Lösung.