Zum Inhalt springen

Suchen...

Software-Testen in der Zukunft - Interview mit Christian Mercier

Die Zukunft des Software-Testens verlangt von uns ein Verständnis neuer Technologien und ein starkes Qualitätsbewusstsein.

Aktualisiert: 7 Min. Lesezeit
Blaupausen-Zeichnung eines Holzmeißels, der die Kante eines groben Zahnrads formt, mit feinen Spänen und einem blasseren Echo am gegenüberliegenden Rand.

Christian Mercier arbeitet seit 1996 im Finanzdienstleistungsbereich. Vom Filialgeschäft über CRM, Strategie und IT - von Sparkassen über Landesbanken und Konzernbanken hat er schon vielfältige Erfahrungen gesammelt. Angefangen im klassischen Projektgeschäft liegt der Schwerpunkt inzwischen bei agilen Methoden. Christian Mercier unterstützt seine Kunden bei einer qualitativ hochwertigen Umsetzung von Anforderungen. Schon bevor das Thema Agilität überall Einzug erhielt, hat er sich mit Methoden zu Herstellung von Transparenz und Optimierung der Projektkommunikation befasst. Bei der Umsetzung legt er Wert auf Usability und Systemreife. Tests agil aufzustellen bzw. in einem agilen Umfeld zu Testen ist ihm daher ein besonderes Anliegen.

Welchen Herausforderungen muss sich Software-Testing in der Zukunft stellen?

Die Herausforderungen der Zukunft sind Vielfältig.

An erster Stelle fallen mir die neuen Technologien und die immer komplexeren Systeme ein. Diese Dinge sind zudem häufig gepaart mit einer immer weitreichenderen Auswirkung auf die Nutzenden – sei es durch automatisierte Kreditvergabeprozesse, vollständig autonom handelnden Systemen oder künstliche Intelligenzen, die mit echten Kunden sprechen.

Zusätzlich gibt es im Bereich des Testings einen immer höheren Automatisierungsgrad und eine immer stärkere Softwareunterstützung im Entwicklungsprozess. Während also Software entwickelt und getestet wird, ändern sich die Umgebungen, in der entwickelt und getestet wird. Dies ist schon heute keine neue Entwicklung, die Bedeutung wird aber mit zunehmender Geschwindigkeit in Form von iterativen Umsetzungen steigen.

Der gewichtigste Punkt ist meines Erachtens, dass wir die Versäumnisse der vergangenen Jahre aufholen und ein durchgängiges Bewusstsein für Qualität schaffen. Entdeckte Abweichungen in einem Test dürfen von keiner Beteiligten Person mehr als unangenehm oder störend empfunden werden, sie müssen vielmehr als positiver Treiber für das Produkt anerkannt sein. Dies funktioniert natürlich nur, wenn nicht ausschließlich auf die initiale Investition geschaut wird, sondern auf den langfristigen return of invest. Natürlich muss es auch weiterhin schnelle Prototypen, quick and dirty Lösungen sowie kostengünstige Angebote geben – hier muss aber klar der Qualitätslevel im Vorfeld definiert und nach außen kommuniziert werden. Denn auch hier bleibt eine Abweichung eine Abweichung und muss im Zweifel bewusst akzeptiert werden und darf nicht einfach aus Kostengründen vom Tisch gefegt werden. Wenn sich alle Beteiligten, von Auftraggebenden über die Umsetzenden bis zum wichtigsten Glied in der Kette, dem Kunden, über die Qualität, also dem positiven Verhältnis von Erwartung und Umsetzung, einig sind, spricht nichts gegen schalspuriges Testen. Diese Entscheidung muss aber von allen bewusst getroffen werden. Und genau dieses Bewusstsein zu schaffen, halte ich für die größte Herausforderungen.

Welche Ideen oder Lösungen könnten diese Herausforderungen adressieren?

Neben der kontinuierlichen Beschäftigung mit neuen Technologien und Techniken ist aus meiner Sicht vor allem eine Weiterentwicklung und Festigung des Selbstverständnisses notwendig. Wie bei jeder Tätigkeit wird das Ergebnis dann exzellent, wenn aus Beruf eine Berufung wird. Teams, ob agil oder klassisch, brauchen also nicht irgendeine Person, die das Thema Test auf dem Tisch liegen hat – nein, sie brauchen einen Person, die das Thema Testing aus voller Überzeugung und mit Leidenschaft besetzt und dabei andere mitreißt.

Wie können wir solche Menschen finden? Die gute Nachricht ist, es gibt sie bereits! Wenn sie richtig eingesetzt und gefördert werden, können sie leichter ihr Umfeld mitnehmen und so langfristig für einen positiven Effekt sorgen.

Wie sieht Future-Testing aus? Wie werden wir testen?

Der Test wird aus meiner Sicht auch in Zukunft noch das klassische alte “Handwerk” sein, in dem das Ergebnis maßgeblich vom Können, Wissen und Engagement der Beteiligten abhängt. Auch wenn die Test vollständig automatisiert in einer Toolchain integriert sind und jedes Softwareinkrement damit vollständig alle Tests durchläuft, ist das Ergebnis von einer guten Planung, einer soliden Analyse, einem effizientem Design, einer gewissenhaften Realisierung, einer verlässlichen Durchführung und einer verständlichen Auswertung abhängig. Dies alles zu gewährleisten muss meiner Ansicht nach auch weiterhin Aufgabe von qualifizierten und engagierten Menschen sein. Auf Grund des schnelllebigen und von Kosten getriebenen Umfelds bedarf es hier neben einer guten Fachexpertise vor allem auch einer gewissen Begeisterungsfähigkeit, um die anderen Beteiligten für die Qualitäts-Mission zu gewinnen.

Das angestaubte Bild eines Testenden, der immer und immer wieder die gleichen Testfälle durchklickt muss sich weiter wandeln zu einem Testenden, der Beteiligte und Systeme versteht, um den Qualitätsgedanken tief im Vorgehen und Ablauf zu verankern.

Wie können sich Tester und Testmanager heute bereits darauf vorbereiten?

Aus meiner Sicht muss ich als Softwaretester ein tiefes Grundlagenverständnis über die Funktionsweise der Technologien im Allgemeinen sowie ein detailliertes Verständnis der zu testenden Teilbereiche und Teilaspekte haben. Das heißt, ich muss mich schon heute mit den Technologie der Zukunft beschäftigen, um sie künftig zu verstehen. Dazu gehört nicht nur Software, die getestet werden soll sondern auch Software, die den Test begleitet, unterstützt oder ausführt. Denn wir alle wissen, dass es keine fehlerfreie Software gibt. Wenn ich also Software zum Testen einsetze muss ich künftig mehr als heute die Möglichkeiten und Grenzen dieser Software verstehen. Nur so kann ich sie richtig einsetzen und die Ergebnisse korrekt deuten.

Ein Thema wird sich aus meiner Sicht nicht ändern – um gute Ergebnisse zu erhalten, muss ich so früh es geht mit dem Testen beginnen und es als Teil der gesamten Entwicklung begreifen. Das Thema “Qualität als Haltung” ist für alle Beteiligten Schlüssel zum Erfolg. Denn nur, wenn wir Dinge mit Herzblut und aus innerer Überzeugung machen, können wir damit langfristig erfolgreich sein.

Häufig gestellte Fragen

Warum erhöhen neue Technologien den Druck auf das Software-Testing?

Weil die Systeme komplexer werden und ihre Entscheidungen direkter auf Menschen durchschlagen. Genannt werden automatisierte Kreditvergabeprozesse, vollständig autonom handelnde Systeme und künstliche Intelligenzen, die mit echten Kunden sprechen. Hinzu kommt, dass sich Entwicklungs- und Testumgebungen während der Arbeit selbst verändern, weil Automatisierungsgrad und Werkzeugunterstützung im Entwicklungsprozess wachsen.

Wie sollte ein Team mit Abweichungen umgehen, die im Test gefunden werden?

Eine gefundene Abweichung sollte als positiver Treiber für das Produkt gelten, nicht als unangenehme Störung. Dieses Verständnis trägt aber nur, wenn nicht ausschließlich die initiale Investition betrachtet wird, sondern der langfristige Return on Invest. Fehlt dieses durchgängige Qualitätsbewusstsein, bleibt Testen ein lästiger Posten statt ein Beitrag zum Ergebnis.

Lassen sich schnelle Prototypen und Quick-and-dirty-Lösungen mit einem Qualitätsanspruch vereinbaren?

Ja, unter einer Bedingung: Der Qualitätslevel muss im Vorfeld definiert und nach außen kommuniziert werden. Eine Abweichung bleibt auch dort eine Abweichung. Sie darf im Zweifel bewusst akzeptiert werden, aber nicht aus Kostengründen einfach vom Tisch gefegt. Sind sich Auftraggebende, Umsetzende und Kunden über das Verhältnis von Erwartung und Umsetzung einig, spricht nichts gegen schmalspuriges Testen.

Genügt es, das Thema Test im Team einfach jemandem zuzuweisen?

Nein. Teams, ob agil oder klassisch, brauchen keine Person, die den Test nur zusätzlich auf dem Tisch liegen hat, sondern jemanden, der das Thema aus Überzeugung besetzt und andere mitreißt. Solche Menschen sind vorhanden. Werden sie richtig eingesetzt und gefördert, nehmen sie ihr Umfeld mit und erzeugen einen langfristig positiven Effekt.

Macht vollständige Testautomatisierung erfahrene Testfachleute überflüssig?

Nein. Selbst wenn Tests vollständig in einer Toolchain integriert sind und jedes Softwareinkrement alle Tests durchläuft, hängt das Ergebnis von guter Planung, solider Analyse, effizientem Design, gewissenhafter Realisierung, verlässlicher Durchführung und verständlicher Auswertung ab. Testen bleibt ein Handwerk, dessen Ergebnis vom Können, Wissen und Engagement der Beteiligten bestimmt wird.

Was müssen Testende über die Werkzeuge wissen, die sie einsetzen?

Sie müssen deren Möglichkeiten und Grenzen kennen, denn fehlerfreie Software gibt es nicht, auch nicht bei Testwerkzeugen. Wer Software zum Testen nutzt, kann sie nur dann richtig einsetzen und die Ergebnisse korrekt deuten, wenn er die Funktionsweise versteht. Das gilt für die zu testende Software ebenso wie für Werkzeuge, die den Test begleiten, unterstützen oder ausführen.

Ab wann sollte im Entwicklungsprozess getestet werden?

So früh wie möglich. Testen ist als Teil der gesamten Entwicklung zu begreifen und nicht als nachgelagerte Phase. Dieser Punkt gilt unabhängig davon, wie sich Technologien und Werkzeuge weiterentwickeln. Ergänzend dazu steht Qualität als Haltung: Sie ist für alle Beteiligten der Schlüssel, vom Auftraggebenden über die Umsetzenden bis zum Kunden.

Diese Seite teilen

Ähnliche Beiträge