Spezielle Testprozess-Verbesserungsmodelle SPICE und TPI : Zwei Konzepte, ein Modell

SPICE hat sich als internationaler Standard bei Reifegradmodellen etabliert. Daneben gibt es auch spezielle Testprozess-Verbesserungsmodelle. Besonders erfolgreich und verbreitet ist Test Process Improvement (TPI), das allerdings bestehende Standards nicht berücksichtigt. Da wäre es doch naheliegend, ein TPI-Modell zu entwickeln, das die Anforderungen von SPICE erfüllt. – Das geht nicht? Geht doch, wie der folgende Artikel beweist.

Die Anforderungen an moderne Software steigen zusehends. Die hohen Erwartungen an die erstellten Produkte werden jedoch längst nicht immer erfüllt. IBM Quality Assurance hat in einer Analyse festgestellt: „Der gemeinsame Nenner aller gefährdeten Projekte ist, dass die Teams bestehende Erfahrungen nicht nutzen.“ Deshalb werden Reifegradmodelle verwendet, um bewährte Vorgehensweisen zur Verfügung zu stellen und die Qualität der Prozesse und damit der Software besser bewerten und vergleichen zu können.

So lassen sich Schwachstellen finden und Verbesserungsmöglichkeiten identifizieren. SPICE hat sich hier als Standard ISO/IEC 15504 etabliert, weshalb viele Hersteller der Automobilbranche inzwischen SPICE-konforme Prozesse von ihren Zulieferern verlangen. Testen ist ein wesentlicher Bestandteil der Qualitätssicherung in der Software-Entwicklung. Allerdings wird der Testprozess in Reifegradmodellen oft vernachlässigt. Deshalb wurden Modelle speziell für den Software- Test entwickelt. TPI der Firma sogeti ist aus Praxiserfahrungen entstanden und wird weltweit verwendet. Da TPI kein anerkannter Standard oder Norm ist, wurden dessen Testinhalte nach den Vorschriften der Norm ISO/IEC 15504 definiert. So erhielt man ein Bewertungsschema mit vergleichbaren Ergebnissen.

Vorgehensweisen regeln und Qualität sichern mit SPICE

1992 wurde das SPICE-Projekt gestartet, um eine Norm für Prozessbewertungen zu erarbeiten. Inzwischen hat die Norm den Status eines internationalen Standards erreicht, und SPICE wird als Synonym für ISO/IEC 15504 verwendet. Sie besteht aus fünf Teilen (Bild 1), wovon nur der zweite Teil zur Durchführung eines Assessments normativ und verpflichtend ist. Die anderen Teile enthalten Erläuterungen zu Konzepten, Vokabular, Leitfäden und ein exemplarisches Modell basierend auf ISO/IEC 12207 – Software Life Cycle Processes (Teil 5). Das zentrale Element bei SPICE ist das Prozess-Assessment-Modell (Assessment: Einschätzung, Bewertung), das sich aus dem Bewertungsrahmen und dem Prozess-Referenzmodell zusammensetzt. Letzteres beschreibt eine Menge von Prozessen mithilfe von Zweck und erwarteten Ergebnissen. Mit dem Bewertungsrahmen lässt sich der Fähigkeitsgrad von einzelnen Prozessen mit vier verschiedenen Bewertungen bestimmen, von „nicht erfüllt“ bis „vollständig erfüllt“. Der Reifegrad einer gesamten Organisation lässt sich damit (noch) nicht ermitteln. Das ist für Teil 7 der Norm geplant. Das Prozess- Assessment-Modell ist die Grundlage für ein Assessment. Es ist in zwei Dimensionen organisiert: die Prozessdimension und die Reifegraddimension mit Indikatoren zum Nachweis für die Bewertung der Prozessreife. Hier gibt es Basispraktiken, generische Praktiken, Arbeitsprodukte etc., die bei den einzelnen Prozessattributen zu Fähigkeitsgraden von „unvollständig“ bis „optimiert“ führen (s. Bild 1) [1].

Testabläufe bewerten mit TPI

TPI wurde 1996 von IQUIP (heute eingetragene Marke von sogeti) entwickelt. Das Modell enthält 20 Kernbereiche, wie z.B. Teststrategie, Metriken, Testarbeitsplatz oder Kommunikation. Diese Kernbereiche sind in die Ebenen A bis D unterteilt. Um eine höhere Ebene in einem Bereich zu erreichen, müssen bestimmte Kontrollpunkte erfüllt werden. Dazu werden detaillierte Optimierungsvorschläge gemacht, die zu einer Verbesserung führen. Zwischen den Bereichen und Ebenen bestehen Abhängigkeiten, nicht jeder Kernbereich ist allerdings gleich wichtig.

Die Zusammenhänge werden in der TPI-Matrix verdeutlicht (siehe Tabelle 1). Nachdem es beispielsweise keinen Sinn ergibt, Metriken einzuführen, wenn noch gar keine Daten zu Abweichungen gesammelt wurden, tritt die Ebene A des Kernbereiches „Metriken“ erst in einer späteren Entwicklungsstufe der Matrix auf. Mithilfe der Matrix ist es möglich, die Reife eines Testprozesses von „beherrschbar“ bis „optimierend“ zu bestimmen [2].

Wie bringt man SPICE und TPI zusammen?

Es soll nun nicht darum gehen, Teil 5 von SPICE, d.h. das exemplarische Prozess-Assessment- Modell nach ISO/IEC 12207 mit den TPI-Inhalten zu vergleichen, sondern TPI gemäß dem normativen Teil von SPICE darzustellen (Bild 2). Dazu benötigt man zunächst ein Prozess- R e f e r e n z m o d e l l . Nachdem alle Kernbereiche wichtig sind und bewusst so formuliert wurden, werden alle 20 als Prozess definiert. Außerdem wurde der Prozess „Integrationstest“ inzugefügt, da dies vor allem bei großen, komplexen Systemen ein wichtiger Bestandteil der Qualitätssicherung ist. Nachdem es für alle Bereiche möglich ist, Rollen, Verantwortlichkeiten und Arbeitsprodukte (z.B. Protokolle, Testspezifikation) zu bestimmen, sind sie als eigenständiger Prozess geeignet.

Danach werden Zweck und Ergebnis formuliert und die Kontrollpunkte in Basispraktiken für SPICE-Level 1 umgewandelt. Die Verbesserungsvorschläge und Abhängigkeiten ergänzen das Ganze. Der Bewertungsrahmen wird von SPICE übernommen und die TPIKategorien den SPICE-Stufen zugeordnet. Auch wenn auf den ersten Blick die jeweilige Einteilung unterschiedlich erscheint, so ist die Grundidee jedoch die gleiche, nämlich die Entwicklung von einer unsystematischen zu einer kontrollierten, sich weiter verbessernden Vorgehensweise. Um ein vollständiges Prozess- Assessment-Modell zu erhalten, müssen alle TPI-Ebenen inhaltlich den Prozessattributen bei SPICE gegenübergestellt werden, so dass ihr Inhalt bei der Bewertung passend und hilfreich ist. Der Inhalt der TPI-Ebene A wurde dem Prozessattribut (PA) 1.1 (Bild 1) zugeordnet. Ebene C der „Berichterstattung“ enthält die Behandlung von Risiken und Empfehlungen mit Metriken. Dies wird auch bei SPICE im Prozessattribut 4.1 „Process Measurement“ gefordert. Ebene D bei TPI verlangt Empfehlungen mit „Software Process Improvement“-Charakter, was ebenfalls in SPICE Prozess- attribut 5.1 behandelt wird.

Somit ergänzen die speziellen TPI-Inhalte die normativen Elemente von ISO/IEC 15504 (s. Tabelle 2). Bei einem Prozess können nicht alle neun Prozessattribute bei SPICE mit TPI-Inhalten ergänzt werden (da es nur vier Ebenen in TPI gibt). So bleibt die Frage, wie die Testspezifika in ein Assessment und somit in die Bewertung einfließen. Dazu wird eine Zuordnungsmatrix als „generische Ressource“ dem Modell hinzugefügt. Sie muss beachtet werden, um bei der Bewertung einer generischen Praktik eine höhere Stufe erreichen zu können. Die genaue Gewichtung der speziellen Testinhalte innerhalb eines Prozessattributes ist der Einschätzung des erfahrenen Assessors überlassen und von der individuellen (Projekt-)Situation abhängig. Zur praktischen Umsetzung und Anwendung wurde das Projekt- und Prozessmanagement-Werkzeug Stages der Firma Method Park Software AG verwendet. Die Browser-Darstellung des Modells ermöglicht es, Aktivitäten und Teilergebnisse eines Testprojektes auf den Referenzprozess abzubilden und zu verknüpfen. Eine so genannte „Gap-Analyse“ zeigt dann die Lücken und unterstützt somit das Assessment.

Einstiegshürden herabgesetzt

Der erarbeitete Lösungsvorschlag [3] für ein Prozess-Assessment-Modell für TPI nach SPICE wurde auch bei einem Beispielprojekt zum Probe- Assessment verwendet. Die Werkzeugunterstützung hat hierbei auf alle Fälle einen Anreiz geschaffen, das Modell einzusetzen, und das Assessment erleichtert. Mit Beispieldokumenten, wie Protokollvorlagen, Checklisten oder Präsentationen, werden der Einarbeitungsaufwand und somit die Hemmschwelle bei der Einführung des Modells deutlich herabgesetzt. Entscheidend für den Erfolg und Nutzen bei der Qualitätsverbesserung sind schließlich der tatsächliche Einsatz und die Akzeptanz eines Modells im Arbeitsalltag. Das erstellte SPICE-konforme Modell ist umfangreicher als das „ursprüngliche“ TPI-Modell.

Es beachtet dadurch aber auch viele Aspekte, die dort nicht untersucht werden (Beschreibung der Arbeitsprodukte, genauere Definition von Dokumentation und Zuständigkeiten etc.). Durch den international bekannten Standard bekommt das Ergebnis mehr Gewicht und Aussagekraft. Nachdem eine Stufe jetzt nicht mehr nur ganz oder gar nicht erfüllt werden kann, sondern noch mit „teilweise“ und „überwiegend“ abgestuft wird, ist eine gerechtere und genauere Bewertung möglich. Das Ergebnis des Probe-Assessments zeigte, dass die Projekterfahrung sehr gut zum erreichten Ergebnis passte und die Situation treffend widerspiegelte. Die ermittelten Optimierungsmaßnahmen erwiesen sich als sinnvoll und halfen, die Prozesse und damit auch die Software-Qualität zu verbessern. Dies ist der beste Beweis dafür, dass das erstellte Prozess- Assessment-Modell als Bewertungsschema geeignet ist und sich in der Praxis bewährt.

Die Benutzer müssen die Prozesse „leben“

Es ist möglich, ein Modell für TPI nach SPICE zu erstellen. Außerdem wurde eine allgemeingültige Vorgehensweise erarbeitet. Dies unterstreicht die Stellung von ISO/IEC 15504 als internationalem Standard für Prozess- Assessments. Somit ist es denkbar, in Zukunft noch weitere Modelle zu definieren, die diese ISO-Norm erfüllen. Allerdings sind Assessment-Modelle nur ein Hilfsmittel, um Software-Prozesse und damit Software-Qualität zu verbessern. Entscheidend ist immer die Akzeptanz durch die Benutzer. Wenn diese die strukturierte Vorgehensweise zu schätzen gelernt haben und auch anwenden, dann ist es möglich, sich kontinuierlich weiterzuentwickeln. Und schließlich wird damit auch die Meinung „Qualität kommt von quälen“ erfolgreich widerlegt.

Sabine Link studierte Informatik und Wirtschaftsinformatik an der Universität Erlangen-Nürnberg und hat den Abschluss zum Master of Computer Science der FernUniversität Hagen. Seit 2001 ist sie Mitarbeiterin der Method Park Software AG in Erlangen. Aus verschiedenen Projekten hat sie langjährige Erfahrung in Integrationsund Validationstest, Testautomatisierung, Testmanagement und Prozessverbesserung. Außerdem hält sie Schulungen zum Themenbereich Software-Test.
Sabine.Link@methodpark.de