Testmanagement
Inhaltsverzeichnis
- Was versteht man unter Testmanagement?
- Ziele des Testmanagements
- Vorteile von Testmanagement
- Der Testprozess nach ISTQB
- Rollen im Testmanagement
- Testmanagement-Normen
- Testmanagement vs. Testautomatisierung
- Testmanagement-Tools
- Testmanagement bei der S/4HANA-Migration
- SAP Cloud ALM: Nachfolger des SAP Solution Manager
- Mit Testmanagement Zeit und Kosten reduzieren
- FAQ
Was versteht man unter Testmanagement?
Testmanagement bezeichnet die geplante und effiziente Koordination aller Testprozesse, um die Qualität Ihrer Software zu optimieren und langfristig zu gewährleisten. Es ermöglicht die Identifizierung und Reduzierung verdeckter Qualitätsrisiken in Ihrer Softwareentwicklung und verhindert somit potenzielle finanzielle Belastungen in der Zukunft. Durch die sorgfältige Organisation und Überwachung von Testaktivitäten können Sie sicherstellen, dass Ihr Softwareprodukt den höchsten Qualitätsstandards entspricht und gleichzeitig die Kosten im Entwicklungsprozess minimiert werden.
Ziele des Testmanagements
Es gibt zwei Hauptziele, die mit Testmanagement verfolgt werden:
- Software-Fehler so früh wie möglich aufdecken.
- Die Unsicherheit bezüglich der Software-Qualität minimieren.
Software-Fehler früh aufdecken
Bei der Entwicklung, Anpassung oder Installation einer Software testen Entwickler*innen meist recht spät. Das führt dazu, dass eine angemessene Reaktion auf gefundene Defects oder echte Fehler erst spät vorgenommen werden kann. Die Kosten, die dadurch entstehen, steigen exponentiell an, je später ein Defect gefunden und behandelt wird.
Die folgende Grafik zeigt die entstehenden Kosten zur Fehlerbehebung (rote Kurve) im Verhältnis zum Zeitpunkt, an dem ein Defect gefunden wurde (orange Kurve). Der tatsächliche Fehler und damit die Ursache für den Defect ist häufig aber schon zu Beginn des Projekts eingebaut worden (blaue Kurve).
Das heißt im Umkehrschluss: Je früher ein Defect gefunden und der Fehler behoben werden kann, desto günstiger ist die Fehlerbehebung für Sie.
Unsicherheit zur Software-Qualität minimieren
Eine falsche Annahme ist, dass durch genügend Tests nachgewiesen werden könne, dass eine Software fehlerfrei sei. Die Wirtschaftlichkeit macht dieser Annahme jedoch einen Strich durch die Rechnung: Eine Testabdeckung von 100 % bei mittlerer Software-Komplexität ist häufig schon sehr aufwändig und damit teuer.
Testmanagement hat daher zum Ziel, die Unsicherheit, ob eine Software kritische Fehler enthält oder nicht, soweit zu minimieren, dass einer Produktivsetzung zuversichtlich entgegengesehen werden kann. Das kann durch verschiedene Parameter wie eine ausreichende Testabdeckung, Durchführung verschiedener Testarten oder auch möglichst produktivnahe Testdaten unterstützt werden. Testmanagement hat nicht zum Ziel, nachzuweisen, dass die Software keine Fehler mehr enthält.
Vorteile von Testmanagement
Mit strukturiertem Testmanagement mit klaren Aufgaben, Rollen und Verantwortlichkeiten gehen üblicherweise viele Vorteile einher. Dazu gehören unter anderem:
- Kostenreduktion über den gesamten Software-Lebenszyklus aufgrund früher Defect-Identifikation und geringeren Wartungsaufwänden durch wiederholbare Tests und Klarheit bzgl. der Anforderungen, die zu testen sind.
- Bessere Planbarkeit der Testphasen durch bekannte Testumfänge.
- Personenunabhängige Tests durch ausreichende Testfalldefinition und -dokumentation, was sogar ein Outsourcing des Testens ermöglicht.
- Stetige Verbesserung der Softwarequalität durch eine stetige Verbesserung des Testmanagements.
- Die Option, strukturierte Testfälle über Testautomatisierung ablaufen zu lassen und damit weitere Zeit und Ressourcen freizuräumen.
Der Testprozess nach ISTQB
Das International Software Testing Qualifications Board (ISTQB) bündelt bewährte Praktiken und Terminologie im Bereich des Testmanagements, welche einen integralen Bestandteil des Qualitätsmanagements ausmachen. Auf dieser Grundlage werden Lehrpläne entwickelt, die es ermöglichen, dieses Wissen strukturiert zu vermitteln. Das ISTQB Certified-Tester Programm stellt ein international anerkanntes und einheitliches Schulungs- und Fortbildungsprogramm für Software-Tester dar.
Mit dem Testprozess nach ISTQB können Sie also ein erfolgreiches Testmanagement erzielen. Wie genau dieser funktioniert, erläutere ich Ihnen im Folgenden.
Der ISTQB-Prozess enthält diese Testphasen:
- Incident Management
- Problem Management
- Change Management
- Release Management
Die dazugehörigen Aktivitäten über Planung, Spezifikation, Durchführung der Tests, Protokollierung und Auswertung werden nach ISTQB in die folgenden Gruppen eingeordnet:
- Testplanung und -steuerung
- Testanalyse und -design
- Testrealisierung und -durchführung
- Testauswertung und -bericht
- Abschluss
Das Testmanagement umfasst innerhalb dieser Gruppen viele einzelne Aktivitäten:
- Die Erstellung eines Testkonzepts mit Vorgaben/Zielen zur Testabdeckung, Akzeptanzkriterien von Tests, durchzuführenden Testarten, die Testumgebung/Testsysteme etc.
- Testdefinition und Festlegung der Testinhalte
- Bereitstellung von Testdaten
- Koordination von Ressourcen und des Testteams
- Die Teststeuerung und Überwachung der Durchführung
- Das Defect-Management = die Nachverfolgung der Analyse und ggf. Behebung von unerwarteten Testergebnissen
- Das Reporting über entsprechende Berichte
Defect vs. Fehler
Eine wichtige Unterscheidung im Testmanagement findet zwischen den Begriffen „Defect“ und „Fehler“ statt. Ein Defect (in der Software-Welt „Bug“ genannt) bezeichnet ein Fehlverhalten bzw. unerwartetes Verhalten einer Anwendung. In einem Testfall ist ein Defect ein Testergebnis, das nicht dem erwarteten Ergebnis entspricht. Ein Fehler ist die Defect-Ursache, z. B. die fehlerhafte Zeile im Quelltext der Applikation, die zu dem Fehlerverhalten geführt hat.
Mit Hilfe eines Tests können Sie Defects ermitteln und bei der Analyse dieser können Sie möglicherweise Fehler finden.
Rollen im Testmanagement
Es gibt verschiedene Rollen, die im Testmanagement unterschieden werden. Der Detailgrad der Unterscheidung ist abhängig vom Level der Betrachtung. Für die Zertifizierung ISTQB Certified Tester Foundation werden nur zwei Rollen unterschieden:
Testmanager
Ein Testmanager ist verantwortlich für den gesamten Testprozess und die erfolgreiche Durchführung der Testaktivitäten. Da es sich hierbei um eine koordinative bzw. Manager-Aufgabe handelt, kann diese von verschiedenen Personen übernommen werden, unter anderem von einem professionellen Testmanager oder auch von einem Projektleiter.
Typische Aufgaben eines Testmanagers umfassen:
- Teststrategie und -vorgaben für das Unternehmen festlegen
- Erstellen und aktualisieren von Testplänen
- Koordination der Testpläne zwischen verschiedenen Stakeholdern
- Einplanen und Anstoßen der verschiedenen Testaktivitäten wie Testanalyse, Testdesign, Testimplementierung und Testdurchführung
- Monitoring des Testfortschritts und der Testergebnisse
- Reporting über Testfortschritt und -ergebnisse
Das ist nur ein Ausschnitt – je nach Größe des Projekts/des Unternehmens, Anforderungen an das Testmanagement und verfügbare Zeit des Rolleninhabers können weitere Aufgaben dazukommen oder die genannten Aufgaben umpriorisiert werden.
Tester
Entgegen der ersten Intuition führt ein Tester nicht nur Tests durch, sondern übernimmt die operativen Aufgaben im Testprozess. In manchen Rollenmodellen wird noch deutlich zwischen z. B. einem Testdesigner, einem Testautomatisierer, einem Testarchitekten und weiteren Rollen unterschieden. Diese werden hier nicht näher beleuchtet, decken aber jeweils Teilaspekte der Testaktivitäten in einer Spezialisierung ab.
Typische Aufgaben eines Testers umfassen:
- Prüfen der Anforderungen (= Requirements), Spezifikationen und Akzeptanzkriterien auf Testbarkeit
- Identifizieren und Dokumentieren von Testvoraussetzungen
- Erstellen und Implementieren von Testfällen und Testprozeduren
- Erstellung des detaillierten Testausführungsplans
- Tests automatisieren
Je nach Aufteilung der Aufgaben können auch die Bereitstellung der Testumgebung mit geeigneten Testdaten in die Aufgaben des Testers fallen.
Testmanagement-Normen
Über viele Jahre wurde Testmanagement systematisiert und damit auch normiert. Die erste Norm in diesem Bereich ist die ANSI/IEEE 829 „Standard for Software and System Test Documentation“, die mittlerweile in der Version 829-2008 vorliegt und die Bestandteile eines Testprozesses beschreibt.
Daraus hervorgegangen ist die Norm ISO/IEC/IEEE 29119 Software Testing, die international einige Normen des Softwaretestens zusammenfasst und damit auch ersetzt. Die Norm ist fünf Teile unterteilt, die Konzepte, Testprozess, Testdokumentation, Testtechniken und „Keyword Driven Testing“ beschreiben. An dieser Software-Norm orientiert sich auch der De-Facto-Standard des ISTQB.
Im Bereich der Softqualität gibt die ISO/IEC 9126 Qualitätsziele vor, die durch den Testprozess und entsprechende Messung der Kriterien erreicht werden sollen. Die sechs Kriterien der Softwarequalität sind Funktionalität, Zuverlässigkeit, Benutzbarkeit, Effizienz, Änderbarkeit und Übertragbarkeit. Diese Norm wurde mittlerweile durch ISO/IEC 25000 „Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — Guide to SQuaRE” ersetzt.
Abhängig von der Branche eines Unternehmens kann es noch weitere Normen geben, die auch gesetzlich verankert sein können. Ein Beispiel dafür ist die Richtlinie MDD 93/42/EWG für die Medizin- und Pharmatechnik. MDD steht dabei für Medical Device Directive. Sie macht Vorgaben zur Validierung, Testdokumentation und vielen weiteren Punkten im Prozess der Software- und Produkt-Entwicklung. Ein anderes Beispiel ist die MaRisk (Mindestanforderungen an das Risikomanagement) gekoppelt mit der BAIT (Bankaufsichtliche Anforderungen an die IT) als Richtlinien der BaFin, die auch Vorgaben zu Testanforderungen beinhalten.
Testmanagement vs. Testautomatisierung
Häufig werden die Begriffe Testmanagement und Testautomatisierung inhaltlich synonym verwendet, jedoch bedeutet beide etwas anderes. Das Testmanagement umfasst auf der einen Seite die Koordination aller Tätigkeiten im gesamten Testprozess. Zu großen Teilen liegen hier steuernde Aufgaben.
Die Testautomatisierung bezeichnet auf der anderen Seite lediglich die Automatisierung der Testdurchführung verschiedener Testarten. Diese geschieht häufig über Software-Unterstützung in Form von Frameworks wie Selenium, Cucumber, Unit-Testing oder auch Tools wie Worksoft Certify, Tricentis Tosca und Microfocus UFT. Das richtige Tool hängt hier sehr stark von den zu automatisierenden Testarten und Systemen/Anwendungen ab, auf die das Tool zugreifen muss.
Testmanagement-Tools
Im Bereich Testmanagement gibt es viele kleinere und größere Tools, die den gesamten Testprozess unterstützen. Dabei gibt es nicht „die eine richtige Lösung“ – auch hier, wie bei der Testautomatisierung, hängt es sehr stark von Ihrer bestehenden Landschaft, den Must-Have-Kriterien und auch der Planung in Richtung Automatisierung ab, was sich für Sie eignet. Einige populäre Vertreter sind:
- SAP Solution Manager Test Suite oder SAP Cloud ALM (im SAP-Kontext)
- JIRA mit dem Testmanagement-Plugin XRAY, Zephyr oder qTest
- Microfocus ALM/QC
- Aqua-cloud.io als Hersteller-unabhängige Cloud-Alternative
- com
Testmanagement bei der S/4HANA-Migration
Eine erfolgreiche S/4HANA-Migration müssen Sie gründlich vorbereiten – u. a. ist eine Bestandsaufnahme Ihrer bestehenden SAP-Prozesse wichtig, um identifizieren zu können, welche Anpassungen, Erweiterungen und Integrationen vorhanden sind. Ein begleitendes Testmanagement ist dabei obligatorisch. Je früher Sie mit dem Testen beginnen, desto besser.
Herausforderungen bei der S/4HANA-Migration
Im Bereich Testmanagement kann es während der Migration zu einigen Herausforderungen kommen. Ein beispielhaftes Problem, das entstehen kann, sind die Testfälle, die in einem Brownfield-Ansatz wenig oder unterschiedlich strukturiert vorliegen können. Oft sind die Ansätze nicht klar strukturiert und müssen zu einem einheitlichen und hochwertigen Gesamtkonzept zusammengefügt werden. Es spielt auch die Auditsicherheit eine wichtige Rolle, insbesondere in stark regulierten Branchen wie dem Bankensektor.
Auch die Testdaten können eine große Herausforderung darstellen: Damit Sie möglichst früh in der Migrationsphase testen können, müssen auch die Testdaten (eine große Menge an Testdaten!) frühzeitig zur Verfügung stehen. Oftmals sind aber bspw. Drittsysteme noch nicht integriert oder Schnittstellen stehen noch nicht zur Verfügung. Meine Empfehlung ist hier: Starten Sie rechtzeitig mit der Vorbereitung, virtualisieren Sie Ihre Drittsysteme und bereiten Sie die Testdaten vor. Je früher Sie Probleme aufdecken, desto leichter sind diese zu beheben.
Hier kommt ein systematisches Testmanagement ins Spiel: Mit diesem erstellen Sie eine sorgfältige Planung sowie essenzielle Tests und minimieren somit Risiken in Bezug auf Datenverlust, Systemausfälle und Fehler in den Geschäftsprozessen.
Erfolgreiches S/4HANA-Testmanagement
Für ein erfolgreiches Testmanagement bei der S/4HANA-Migration habe ich Ihnen vier Schritte zusammengefasst:
1. Teststrategie entwickeln
Für eine hohe Qualität benötigen Sie eine durchdachte Teststrategie. U. a. halten Sie Rollen der Beteiligten fest, mit welchen Methoden Sie arbeiten und erstellen zudem einen Zeitplan.
2. Tests vorbereiten
Im zweiten Schritt halten Sie fest, welche Systeme und Prozesse Sie testen, welche Testdaten und Dokumente Sie für diese benötigen und wie hoch der Zeitbedarf ist.
3. Tests durchführen
Danach führen Sie Integrationstests durch, damit Sie unterschiedliche Schnittstellen prüfen können. Funktionstests werden eingesetzt, um Einzelleistungen der Lösungen zu prüfen und Benutzertests sind dafür da, um die User Experience zu testen.
4. Defect Management
Im letzten Schritt nutzen Sie Tools wie u. a. den SAP Solution Manager, um Fehler systematisch zu erfassen und ihre Prioritäten festzulegen. Nach der Fehlerbehebung erfolgt eine erneute Prüfung, um die Richtigkeit der Korrekturen zu überprüfen.
SAP Cloud ALM: Nachfolger des SAP Solution Manager
Für SAP-Lösungen wurde oftmals der SAP Solution Manager eingesetzt, bei dem Sie zwischen Projekten und Linienbetrieb unterscheiden. Schließlich müssen Sie für das Testen innerhalb eines Projekts auf unterschiedliche Punkte achten, wie u. a. der Projektgröße oder wie wichtig das Projekt ist.
Insgesamt ist der Testprozess mit dem SAP Solution Manager in sechs Schritte unterteilt:
- Testumfang identifizieren
- Tests planen und System konfigurieren
- Tests manuell ausführen
- Mit Automatisierungen auseinandersetzen
- Änderungen implementieren
- Ergebnisse dokumentieren und Reporting durchführen
SAP hat jedoch ein Wartungsende des Solution Managers für 2027 angekündigt. Nachfolger dieser Lösung stellt SAP Cloud ALM (Application Lifecycle Management) dar. Größter Unterschied zum SAP Solution Manager ist, dass diese Lösung in der Cloud betrieben wird. Cloud ALM ist insbesondere für Unternehmen geeignet, die über eine hybride Systemlandschaft verfügen und bereits weitere Migrationsschritte zu Cloud-Lösungen von SAP planen.
Mit Testmanagement Zeit und Kosten reduzieren
Bei der Entwicklung einer neuen Software-Lösung lassen viele Unternehmen gerne mal das Testmanagement hinten stehen – doch da dies zu späteren Problemen führen kann, sollten Sie diesen Schritt nicht außer Acht lassen.
Haben Sie noch offene Fragen rund um strukturiertes Testmanagement oder Tools zur Unterstützung des Testprozesses? Dann treten Sie gerne in Kontakt mit uns, damit wir Sie in einem unverbindlichen Gespräch beraten können!
Websession: Testmanagement
Wenn Sie Fragen zum Testmanagement haben, dann vereinbaren Sie eine kostenlose Websession mit uns.
FAQ
Was ist Testmanagement?
Testmanagement beschreibt alle Testprozesse, die mit der Entwicklung einer neuen Software-Lösung einhergehen. Hier entwickelt ein Testmanager Konzepte, um die gesamten Testaktivitäten im Unternehmen zu koordinieren.
Was sind die Vorteile von Testmanagement?
Testmanagement bringt Ihrem Unternehmen u. a. folgende Vorteile:
- Kosten- und Aufwandssenkung
- Zeitgewinn
- Weinger Systemausfälle
- Höhere Transparenz
- Größerer Überblick
Was sind die Schritte beim Testmanagement?
Beim Testmanagement folgen Sie diesen Schritten:
- Testplanung und -steuerung)
- Testanalyse und -design
- Testrealisierung und -durchführung
- Testauswertung und -bericht
- Abschluss
Wie sind die Testschritte im SAP Solution Manager?
Die Testschritte im SAP Solution Manager sehen wie folgt aus:
- Identifizierung des Testumfangs
- Planung der Tests und Konfiguration des Systems
- Ausführen manueller Tests
- Auseinandersetzung mit Automatisierungen
- Implementierung der Änderungen
- Dokumentation Ergebnisse und Durchführen der Reportings
Welche Nachfolger gibt es für den SAP Solution Manager?
Der Support für den SAP Solution Manager wird im Jahr 2027 eingestellt. Mit einigen Bestimmungen können Sie die Lösung sogar noch bis 203o in Ihrem Unternehmen einsetzen. Als Nachfolger sieht SAP zwei Lösungen: SAP Cloud ALM (Application Lifecycle Management) und SAP Focused Run.