Software-Qualitätssicherung

So testen Sie business-kritische Anwendungen effizient

Dr. Klaus Manhart hat an der LMU München Logik/Wissenschaftstheorie studiert. Seit 1999 ist er freier Fachautor für IT und Wissenschaft und seit 2005 Lehrbeauftragter an der Uni München für Computersimulation. Schwerpunkte im Bereich IT-Journalismus sind Internet, Business-Computing, Linux und Mobilanwendungen.
Software-Qualitätssicherung muss heute das Tempo der digitalen Transformation mitgehen und gleichzeitig die Funktionsfähigkeit business-kritischer Anwendungen sicherstellen. Dafür braucht es neue Ansätze wie eine zentrale Testeinheit oder das Auslagern der Qualitätssicherung an externe Partner.

Software-Tests sind heute unabdingbar, um die Qualität von Business-Prozessen und Kunden-Services sicherzustellen. Doch die meisten Unternehmen erfüllen noch nicht einmal die Anforderungen der traditionellen Entwicklungsmethoden an die Testqualität. Typische Anzeichen für schwach entwickelte Testniveaus sind: der Fokus liegt bei einzelnen Projekten und Abteilungen, Tests werden weitgehend ad-hoc und manuell ohne Nutzung von Automatisierung und Tools durchgeführt, und es fehlen Prüfnormen und Richtlinien sowie spezialisierte Testkräfte.

Dies alles macht die Software-Qualitätssicherung aufwändig, ineffizient und teuer. Der Fokus des jeweiligen Fachbereichs auf "sein" Entwicklungsprojekt bedeutet, dass das Rad jedes Mal von Neuem erfunden wird. Erkenntnisse aus früheren Projekten stehen kaum zur Verfügung oder deren Dokumentation ist spärlich. Und warum sollte eine Abteilung Budget für ein Test Framework mit Standards, Werkzeugen und Verfahren bereitstellen, das dem gesamten Unternehmen zu Gute kommt? Dieser dezentrale ("stand-alone") Ansatz beim Testing führt zu höheren Kosten und Aufwänden für das gesamte Unternehmen.

Hinzu kommt: Mit der digitalen Transformation und Beschleunigung von Business-Prozessen bewegen sich heute immer mehr Software-Unternehmen in Richtung agiler Programmiermethoden, bei denen Qualitätssicherung mit dem kontinuierlichen Entwicklungsprozess verwoben wird. Damit erreicht die Entwicklung ein neues Niveau hinsichtlich Geschwindigkeit, aber auch zusätzliche Komplexität. Diese neuen agilen Entwicklungsmethoden machen es noch komplizierter, hohe Qualität für Software zu gewährleisten.

Software-Tests intern und extern

Ein Ausweg aus dieser Situation ist die Einführung einer zentralen Einheit, die die Verantwortung für alle Elemente des Testing trägt - von Standards, Teststrategie, Design, Plattformen über den Testbetrieb bis hin zur Dokumentation und kontinuierlichen Pflege einer allgemeinen Datenbank über die Testergebnisse, bekannte Fehler usw. Eine solche Testeinheit wird dann zur zentralen Anlaufstelle oder zum Full-Service-Anbieter für alle Aspekte von Software-Tests. Im Jahr 2014 verfügten immerhin bereits 26 Prozent aller Unternehmen über eine solche zentrale Einheit.

Solche Testeinheiten lassen sich auch extern betreiben. Firmen können die Investitionen für eine eigene Testeinheit einsparen und einige Aufgaben oder das komplette Testing-Management an einen externen, kompetenten Partner vergeben. Dies ist insbesondere dann sinnvoll, wenn der Outsourcer über Standards und automatisierte Tools verfügt, die schnell Effizienzvorteile und Zeiteinsparungen generieren.

Wenn sich ein Unternehmen zur Fremdvergabe entschließt, bleibt es dennoch wichtig, interne Standards für Tests sowie Entwicklung zu definieren und die Tests entsprechend der Standards zu dokumentieren. Andernfalls wird das Outsourcing eine nachhaltige Lösung nur behindern.

Mehr zur Software-Qualitätssicherung im digitalen Zeitalter erfahren Sie hier.