30.03.2021 – Kategorie: Geschäftsstrategie

Softwaretest: Richtige Planung führt zu erfolgreicher Projektabwicklung

NIT-Abteilung IT-Sicherheit Softwaretest IT-DienstleisterQuelle: Dmytro Zinkevych/Shutterstock

Ein Softwaretest wurde noch vor einiger Zeit als lästiges Übel klassischer Entwicklungsprojekte angesehen. Inzwischen geben viele Unternehmen einen erheblichen Teil ihres IT-Etats für das Testen von Software aus. Denn nur so können langfristig die Qualitätserwartungen der Kunden erfüllt werden. Welche Teststrategie ist die richtige und wie plant man Softwaretests?

Die neue Buchungsplattform ist endlich online, doch aus softwaretechnischen Gründen fällt sie am ersten Tag immer wieder aus. In einem Online-Marktplatz kommt es durch Sicherheitslücken im System zum Diebstahl von Kunden- oder Kreditkarteninformationen. Oder, jüngstes Beispiel, die Corona-Massentests in Österreich starteten mit massiven IT-Pannen, weil das System für die elektronische Erfassung der Daten immer wieder ausfiel und schließlich alles auf Papier notiert werden musste. Diese Beispiele zeigen ganz klar, dass durch einen fehlenden Softwaretest erhebliche kommerzielle und materielle Schäden wie auch Imageschäden entstehen können.

Immer mehr Unternehmen setzen auf einen Softwaretest

Um nicht erst mit Software-Qualitätsproblemen konfrontiert zu werden, wenn es eigentlich schon zu spät ist, nehmen viele Unternehmen das Testen vor der Einführung sehr ernst. Laut dem „Continuous Testing Report“ von Capgemini , der auf Basis einer Umfrage unter 500 leitenden Entscheidungsträgern in der Unternehmens-IT entstand, haben 55 Prozent der befragten Unternehmen inzwischen einen Ansatz für kontinuierliche Tests eingeführt, Tendenz steigend.

„Eine gut durchdachte und fundierte Testplanung ist der Schlüssel für ein erfolgreiches Testprojekt, auch wenn das Testen über den Lebenszyklus einer Applikation betrachtet zwischen 25 und 50 Prozent der anfallenden Gesamtkosten in Anspruch nimmt”, erklärt Frank Witte, Inhaber von Testmanagement.de, das sich auf Strategie, Monitoring und Controlling von Softwaretests in Unternehmen spezialisiert hat.

Was sind Risiken und Herausforderungen von Softwaretests in Unternehmen?

Bevor Softwaretests konzipiert und geplant werden, ist es wichtig, sich über die Probleme und Risiken klar zu werden. So kann man diese von vornherein ausschließen oder zumindest darauf vorbereitet sein. Der Testmanager fühlt sich dann nicht als Getriebener im Reaktionsmodus, sondern kann von Anfang an aktiv agieren. Auch wenn dieser Fakt vielleicht überrascht, so haben laut Capgemini-Studie 62 Prozent der Befragten Schwierigkeiten, qualifizierte Fachkräfte für Strategie, Konzeption, Aufbau und Umsetzung kontinuierlicher Softwaretests zu finden.

Das Personal ist gemäß Wittes Erfahrung tatsächlich eine Herausforderung bei der Planung von Softwaretests. Die Unternehmen sollten vorher abklären, ob genügend erfahrene Tester zur Verfügung stehen und ob sie motiviert sind. „Dafür spielt auch eine Rolle, ob der Mitarbeiter überhaupt Ressourcen hat oder ob er überlastet ist. Das Unternehmen sollte auch abklären, ob es persönliche Differenzen im Team gibt”, so Witte. Sein weiterer Rat: Das Team überschaubar halten, um die Kommunikationswege zu reduzieren, und Aufgabenstellungen klar formulieren.

Wenn der Softwaretest hinterfragt wird: Risiko in Euro umrechnen

Neben dem Faktor Personal kann auch die Priorität des Projektes innerhalb des Unternehmens eine Herausforderung sein. Laufen zeitgleich andere Projekte, die der Geschäftsführung wichtiger sind, kann es ebenfalls zu Schwierigkeiten im Ablauf kommen. Gleiches gilt, wenn das Management überzogene Erwartungen hinsichtlich Terminsituation, Kosten und Qualität stellt. Neben diesen „soften“ Faktoren gibt es auch einige hard facts zu bedenken. Eine Umstellung der Server oder der Datenhaltung in der Cloud kann etwa Auswirkungen auf die zu testende Software haben, genauso wie die Änderung von Datenbanken.

Wenn generell der Sinn des Softwaretests hinterfragt wird, hilft es, vorhandene Risiken in finanzielle Aufwendungen umzurechnen. „Zu sagen, wegen mangelhafter Testabdeckung beträgt das Risiko 750.000 Euro, ist natürlich wesentlich eindringlicher als zu sagen, dass wahrscheinlich fünf Prozent der geplanten Testfälle nicht termingerecht getestet werden können”, berichtet Witte.

Testung sollte sich an der IT-Strategie orientieren

Wenn die Herausforderungen hinreichend bekannt sind, kann mit der Konzeption, Planung und Organisation des Tests begonnen werden. Erster Schritt ist das Erarbeiten einer Teststrategie als Grundlage für die richtigen Testprozesse. Die Strategie sollte zudem unternehmensweit gültig sein und sich an der IT-Strategie orientieren. In der Dokumentation sollten mit Hilfe einer Testrichtlinie auf hohem Abstraktionsniveau die Prinzipien, der Ansatz und die wichtigsten Ziele einer Organisation in Bezug auf das Testen zusammengefasst werden. Handelt es sich um ein kleines Projekt von nur wenigen Tagen, zum Beispiel für die Einführung einer App, können nur Teile der Testrichtlinie umgesetzt werden.

Es empfiehlt sich, für die Umsetzung der Projektstrategien und Erfolgskontrolle geeignete Metriken und Balanced Scorecards zu verwenden. 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.

Softwaretest: 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 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.“

Für einen erfolgreichen Softwaretest 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. (sg)

Über die Autorin: Claudia Ballhause ist IT-Journalistin Wordfinder PR

Lesen Sie auch: ERP-Projekt: Wie Unternehmen Microsoft Dynamics 365 selbst einführen können


Teilen Sie die Meldung „Softwaretest: Richtige Planung führt zu erfolgreicher Projektabwicklung“ mit Ihren Kontakten:


Scroll to Top