Foto: Steria Mummert Consulting
Ein essenzielles Merkmal reifer Testorganisationen ist ein methodisches Vorgehen, wie es beispielsweise bei der Qualitätssicherung von Flugzeugbauern und Automobilherstellern Standard ist. Bei Softwareentwicklern kommt dieser Ansatz noch zu kurz. Der Grund heißt "Time-to-market".
Die Entwicklungszyklen bis zum nächsten Release haben sich in den letzten Jahren rapide verkürzt. Gleichzeitig sind IT-Projekte komplexer, und die IT spielt im Unternehmen heute überall eine geschäftskritische Rolle. Fallen Systeme aufgrund von Softwarefehlern aus, hat das in der Regel eine geschäftsschädigende Wirkung.
Um für die Softwarequalität zu sorgen, nimmt heute das Testen mehr Projektzeit in Anspruch. In Großprojekten schluckt es mindestens 30 Prozent der Gesamtzeit für das Projekt. Häufig summiert sich der Anteil auf 40 bis 50 Prozent. Die Folge: Um die Deadline des Kunden zu halten und im Budget zu bleiben, spielen Softwareentwickler auf Risiko und lassen ihr Testmanagement häufig schleifen. Der Ausweg aus diesem Dilemma aus Zeitdruck und steigenden Qualitätsansprüchen kann nur lauten, das Testen effizienter zu gestalten, beispielsweise die Abläufe zu beschleunigen.
Aktionismus statt Analyse
Bei der Verbesserung der Prozesse verfallen IT-Manager allerdings häufig in Aktionismus anstatt zunächst genau zu analysieren, wie es um das eigene Testmanagement bestellt ist. Beliebte Ad-Hoc-Maßnahmen sind die Automatisierung von Softwaretests, um Testkosten einzusparen sowie das Auslagern bestimmter Tests an Spezialisten. Die Maßnahmen sind zwar im Ansatz richtig. Für beide sollte das Testmanagement allerdings bereits ein bestimmtes Level an strategischem und methodischem Vorgehen aufweisen.
Für eine wirkungsvolle Testautomatisierung sollten die Testfälle beispielsweise reproduzierbar und standardisiert sein. Und um Outsourcing effektiv einzusetzen, unterstützt eine umfassende Dokumentation aller mit dem Testen zusammenhängenden Abläufe die Zusammenarbeit mit Dienstleistern.
Auch Begrifflichkeiten sollten eindeutig definiert sein und in einer Teststrategie festgehalten werden. Auftraggeber und Testdienstleister sprechen damit die dieselbe Sprache, wodurch Unternehmen unnötige Kosten durch Kommunikationspannen vermeiden.
Fehlt dieses strategische Vorgehen, steigt das Risiko, dass die Kosten für zusätzliche Abstimmungsschleifen, überflüssige Trainings und unnötige Tool-Lizenzen steigen. Schlimmstenfalls übersteigen die Investitionen sogar die anvisierten Einsparungen. Denn das Automatisieren von Chaos führt eben zu weiteren Chaos, anstatt es zu beseitigen.
Methodenbaukasten für ein Test-Assessment
Dieser Aktionismus vieler Unternehmen hat seinen Grund. Denn ihnen ist häufig gar nicht bekannt, in welchem Stadium sich ihre Testprozesse befinden. Inzwischen gibt es allerdings verschiedene Bewertungsmethoden, die Unternehmen an die Hand nehmen und einen Rahmen liefern, um den Status-quo des Testmanagements zu ermitteln und es schrittweise zu verbessern.
Die Methoden, beispielsweise TMMi, TPI, MMAST, TAP, TMap verstehen sich dabei als Leitfaden. Testmanager bekommen eine Ahnung davon, wie ausgreift ihr Testmanagement derzeit ist, ob geplante Investitionen in bestimmte Verbesserungsmaßnahmen aktuell überhaupt sinnvoll sind oder ob nicht andere Schritte aktuell Vorrang haben.
Foto: TMMi Foundation
Testing Maturity Model integration (TMMi) ist eine der zwei am häufigsten verwendeten Methoden. Das Assessment-Verfahren baut auf CMMI auf, dem gängigen Modell zu Bewertung von Softwareentwicklungsprozessen. TMMi umfasst fünf Ebenen, von denen jeder einen Reifegrad des Test Managements beschreibt.
Auf der untersten Stufe, Level 1, ordnen sich beispielsweise Unternehmen ein, die Software nach dem Prinzip "Try and error" oder "Debugging" testen. Softwaretests sind vor allem dazu da, Programmier- und Funktionsfehler zu finden und zu beseitigen.
Auf der obersten Stufe, Level 5, haben Unternehmen die Prozessverbesserungen, die sich aus den Ebenen darunter ableiten, in die Testabläufe integriert. Der Test trägt dann nicht nur dazu bei, dass Fehler gefunden, sondern dass sie auch aktiv vermieden werden.
TPI: Checkliste liefert transparente Bewertung
Foto: Steria Mummert Consulting
Bei der Methode Test Process Improvement (TPI) handelt es sich ebenfalls um einen Leitfaden, mit dem Entwicklerteams den Reifegrad ihrer Testprozesse bestimmen können und konkrete Vorschläge zu deren Verbesserung erhalten. Das TPI-Modell unterteilt den Testprozess hierfür in 20 verschiedene Kernbereiche, sogenannte Key Areas, denen jeweils Ebenen zugeordnet sind.
Anhand der Ebenen lässt sich der Reifegrad eines Kernbereichs bestimmen - ähnlich wie bei TMMi. Jede höhere Ebene ist in zeitlicher, finanzieller oder qualitativer Hinsicht besser als die vorherige. Damit die Benutzer feststellen können, ob ein Kernbereich die Anforderungen einer Ebene erfüllt, definiert das TPI-Modell für jede Ebene eine Reihe von Kontrollpunkten. Sie dienen als Checkliste, die eine objektive und transparente Bewertung eines Kernbereichs ermöglichen.
Darüber hinaus berücksichtigt das Modell sinnvolle Kombinationen und Abhängigkeiten der Kernbereichsebenen: So hat es beispielsweise wenig Sinn, eine obere Ebene im Kernbereich "Reporting" anzustreben, wenn sich das Testmanagement in der Key Area "Dokumentation von Abweichungen" auf einer niedrigen Ebene befindet. Denn es gibt ja nichts, über das es sich zu berichten lohnt.
Die Unterschiede beider Modelle
Beim Vergleich beider Methodenbaukästen fällt auf: TMMi hat Vorteile, wenn ein Unternehmen bereits für die Verbesserung der Softwareentwicklung insgesamt auf CMMi setzt. Die Test-Manager erhalten so eine 360°-Grad-Sicht auf die IT-Organisation, die Softwareentwicklung und Testing gleichermaßen abdeckt.
Bei der Verbesserung der Prozesse lassen sich so Synergien und eine erweiterte Sicht auf sämtliche Abläufe erreichen. Wenn eine Testorganisation beispielsweise nach TMMi die Ebene 3 erreicht, ist das vergleichbar mit Level 2 im Bereich "Verification and validation" bei CMMi.
Obwohl TMMI schon sehr ins Detail geht, deckt es Bereiche nicht ab, die TPI berücksichtigt. Dazu gehören das Office Environment, Reporting und Testware Management. Alle drei Bereiche sind allerdings wichtige Bestandteile im Testprozess. Das verschafft TPI einen gewissen Vorteil gegenüber der TMMi-Methode.
Ein weiterer Unterschied beider Ansätze ist die Abstufung zwischen den Reifegraden. Jeder Kernbereich bei TMMi erfordert einen bestimmen Reifegrad. Da bedeutet: Um Level 3 zu erreichen, müssen unter anderem alle Anforderungen der Key Area "Test Training" erfüllt sein.
TPI bietet hier feinere Abstufungen. Die Key Area "Test functions and training" umfasst drei Reifeabstufungen A bis C. So können IT-Organisationen die Verbesserung ihres Test Managements in kleinere Schritte einteilen, die leichter zu kontrollieren und damit einfacher zu realisieren sind. Die Macher von TPI nennen als weitere Schlüsselvorteile, dass TPI dabei hilft, Risiken bei Investitionen in das Test Management abzumildern und mögliche Widerstände im Unternehmen abzubauen.
Kriterium |
TMMi |
TPI |
Offizielle Akkreditierung |
Ist nötig |
Nicht nötig |
Urheber |
TMMI Foundation |
Sogeti |
Zugrundeliegender Ansat |
CMMI |
TMAP |
Detailtiefe |
High level |
Detailed |
Fokus |
Die Softwareentwicklung als Ganzes |
Test |
Abstufung der Kernbereiche |
Keine Abstufung. Die Kernbereiche beschränken sich |
Jeder Kernbereich hat mehrere, eigene Reifegrade. |
Bewertungsmethode |
Fragebogen |
Checkliste |
Werkzeuge |
Matrix zum Nachverfolgen |
Checkliste |
Quelle der Tabelle TMMi und TPI im Vergleich: Steria Mummert Consulting
Das Ziel: Verbesserungsprojekte inklusive Roadmap ableiten
Das Anwendungsziel von TMMi und TPI ist immer, konkrete Verbesserungsprojekte inklusive einer Roadmap abzuleiten. Doch Unternehmen sollten dem Tool nicht einfach nur blind folgen, ohne einen Abgleich mit der Unternehmensstrategie durchzuführen. Nicht alle Maßnahmen, die eine der Assessment-Methoden vorschlägt, müssen zwingend umgesetzt werden - zumindest nicht sofort.
Sind einzelne Key Areas beispielsweise bereits besser ausgestaltet als bei den wichtigsten Wettbewerbern, kann es sinnvoll sein, aktuell nicht noch mehr in die Reife des Testmanagements zu investieren. Es sei denn, die Qualität der Software gehört zu den wichtigsten USPs.
Darüber hinaus ist es entscheidend, dass die Unternehmen überhaupt genügend Manpower und Budget für die Verbesserungen zu besitzen. Es kommt häufig vor, dass zwei Verbesserungsmöglichkeiten aus der Sicht des Modells sinnvoll sind. Die Ressourcen reichen allerdings nur für einen Schritt aus. Die Verantwortlichen stehen dann vor der Entscheidung, welche Maßnahme umgesetzt wird.
Die Nicht-Beachtung dieser strategischen Fragen kann zu einer Falle werden. Angenommen ein Unternehmen hat ein Qualitätsmerkmal, mit dem es sich von anderen Marktakteuren unterscheidet. Es ist beispielsweise besonders schnell bei der Einführung neuer Produkte. Ist Time-to-market allerdings das einzige Kriterium, mit dem sich das Unternehmen differenziert, führt die Einführung stringenter und formalisierter Testprozesse dazu, dass dieser Erfolgsfaktor des Unternehmens ausgebremst wird. Eine Umsetzung hätte also fatale Folgen für die künftige Geschäftsentwicklung.
Test Assessments und Ableitung der Verbesserungsvorschläge ist eine Kunst für sich
Das zeigt: Die Durchführung von Test Assessments sowie die Ableitung der Verbesserungsvorschläge ist eine Kunst für sich. Allein der Vergleich mit Wettbewerbern ist aufwändig. Da intern kein Wissen über das Vorgehen der Wettbewerber vorliegt, bieten sich unabhängige Benchmark-Studien an, aber die sind noch selten. Darüber hinaus ist die Anwendung jedes Test Assessments mit zusätzlichem Aufwand verbunden.
Gleichzeitig gibt es kein universelles Rezept, welche Methode zu mehr Erfolg bei geringeren Kosten führt. Jedes Unternehmen wird individuelle Vorteile bei beiden Ansätzen entdecken und sollte sich auch daran orientieren. Für Unternehmen, die hausinternen Aufwand scheuen, für die eignen sich beispielsweise Spezialisten, die Test Assessments für Unternehmen durchführen.
Letztendlich ist es allerdings nicht so entscheidend, WIE Unternehmen ihr Test Management messen und Verbesserungsansätze ableiten. Wichtig ist, DASS die Verantwortlichen an das Wissen über die Testprozessreife in ihren Unternehmen gelangen - unabhängig davon, ob selbständig oder durch die spezialisierter Anbieter, mit TPI oder TMMi.
Artur Shokin ist Berater bei Steria Mummert Consulting.