In der Teststrategie muss auch definiert werden, wie intensiv auf welcher Stufe getestet werden soll. Das hängt von unterschiedlichen Faktoren ab, beispielsweise dem verfügbaren Budget, dem Risiko, der Komplexität des zu entwickelnden Systems, der Menge der Teams oder auch dem Wissen über Testaktivitäten. „Beim Erstellen der Strategie darf nicht vergessen werden, Module erst einzeln zu testen, sie dann zu Subsystemen zu integrieren und am Ende zu einem Gesamtsystem zusammenzufassen. Auf diese Weise kann man sehen, ob alles richtig funktioniert”, so Witte.
Im Review-Prozess die Zustimmung von allen Beteiligten einholen
Nach dem Erarbeiten der Strategie gilt es dann mittels des Testkonzeptes einen Bauplan zu erstellen. Dabei helfen vom IEEE (Institute of Electrical and Electronic Engineers) veröffentlichte Standards wie der „IEEE 829 Standard for Software Test Documentation“. Auch wenn vielleicht nicht alle Teile relevant sind, ist es sinnvoll, die Vorlage als grobe Leitlinie und Kompass zu verwenden. Denn in diesem Bauplan wird genau definiert, was die Testobjekte sind, welche Testaufgaben bestehen und welche Infrastruktur dafür notwendig ist.
„Das Testkonzept ist kein Produkt, das im stillen Kämmerlein entsteht. Sondern es muss schrittweise im Dialog mit Experten und mit zukünftig Betroffenen im Projekt erarbeitet werden, damit es funktioniert”, weiß Witte. Steht das Konzept sollte ein Review-Prozess mit allen Beteiligten durchgeführt werden. Nur so kann jeder sein Feedback geben und ein Konsens wird erreicht. Durch das aktive Einbinden wird das Konzept gleichzeitig mit Leben erfüllt, denn ein Dokument mit Alibifunktion, das lediglich aus Gründen der Revisionssicherheit erstellt wurde, erfüllt seinen Zweck nicht.
Bei agilen Projekten muss sich die Testorganisation an stärkere Dynamik anpassen
Steht das Konzept, kann mittels der Testorganisation die praktische Umsetzung organisiert werden. Für die Testplanung empfiehlt sich dabei eine „rollierende“ Vorgehensweise. Das bedeutet, dass zu Beginn eine grobe Planung für das gesamte Projekt vorgenommen wird, die für jede einzelne anstehende Projektphase weiter detailliert wird. In dieser Phase geht es hauptsächlich um die Organisation der Testressourcen, zum Beispiel Personal, benötigte Hardware oder Datenbereitstellung. „Damit der Softwaretest geordnet abläuft, sind regelmäßige Statusmeetings, wöchentliche Testfortschrittsberichte und Abstimmungen unerlässlich“, fügt Witte hinzu. „Falls es sich um ein agiles Projekt handelt, muss sich der Testprozess an die stärkere Dynamik anpassen. Das sollte auch bereits bei der Organisation bedacht werden.“
Künstliche Intelligenz verändert die Prozesse bei Softwaretests
Trends wie künstliche Intelligenz (KI), kognitive Technologien oder Blockchain bieten neue Methoden, Verfahren und Ansätze, um Testabläufe effizienter umzusetzen. Denn der Einsatz von KI macht es möglich immer komplexer werdende Softwaresysteme in kürzerer Zeit zu verifizieren. Ist die Software bereits im Einsatz, übernimmt KI eine Wächterfunktion und warnt in Echtzeit vor zukünftigen Veränderungen und Abweichungen, die zu Fehlern führen können.
Auch die Analyse von Big Data, um beispielsweise Fehlertaxonomien zu identifizieren oder die Testabdeckung zu steigern, wird möglich sein. Obwohl die Nutzung von KI in der Softwareentwicklung noch ganz am Anfang steht, wird die Arbeit mit KI-gestützten Werkzeugen in Zukunft auch für Softwaretester immer wichtiger. „KI kann wesentliche und reproduktive Aufgaben wie die Testdurchführung oder den Entwurf der Testfälle übernehmen“, so Witte. „Das schafft dem Softwaretester mehr Zeit für kreative und geistig anspruchsvollere Aufgaben.“
Fazit
Für den Erfolg von Softwaretests ist ein durchdachtes und ausgefeiltes Management erforderlich. Mit dem richtigen Testmanagement lassen sich Herausforderungen und Risiken bereits vor dem Projekt visualisieren. Dementsprechend sind Testmanager in der Phase der Konzepterstellung schon darauf sensibilisiert und können diese Punkte mit ins Konzept einfließen lassen. Damit das Konzept wirklich zum zentralen Dokument im Entwicklungs- und Testprozess wird, sollten alle Beteiligten die Möglichkeit haben, ihr Feedback zu geben. Die Bedeutung von Softwaretests wird in den nächsten Jahren weiter steigen, umso wichtiger ist eine strukturierte Vorgehensweise mit strategischer Planung und Organisation von Testprojekten.
Claudia Ballhause, IT-Journalistin Wordfinder PR
www.testmanagement.de