Jörg „Jogi“ Sievers ist seit über 25 Jahren als Testautomatisierer und Testspezialist unterwegs. Zuvor war er ein Jahrzehnt für die Nahrungsmittelindustrie tätig, wo sein Blick für Qualität von Anfang an geschärft wurde. Privat war Datenfernübertragung im Vor-Internetzeitalter (Mailboxen) sein Steckenpferd, bis er dann endgültig in der IT landete. Installationen, Migrationen, Support und Schulungen für eine Arztpraxissoftware, sowie der Verkauf und Einrichtung von PCs, NeXT-, Sun- und Apple-Computern stellten das IT-Wissen auf eine breite Basis. Es folgte die Oberflächentestautomatisierung von StarOffice und OpenOffice.org als Desktopanwendung, sowie Sun WebOffice in der Web-Welt. Danach trieb ihn zehn Jahre lang die Software in der Energiewirtschaft um, bis er dann vor dreieinhalb Jahren bei der SIGNAL IDUNA Gruppe landete. Er ist Fan von geschäftsgetriebener Testautomatisierung (Business-Driven Testautomation), bspw. im Kontext von Behaviour-Driven Development, Consumer-Driven Contract Testing von Schnittstellen oder artverwandten Vorgehensweisen. IT-Sicherheit und Privatsphäre im digitalen Raum waren schon seit dem Mailbox-Zeitalter und sind bis heute auf seiner Agenda. Seit vielen Jahren ist er ein Experte für Sahi Pro, einem Testwerkzeug, dass sowohl Web-, als auch Desktop-, mobile und SAP-Geschäftsvorfalltests beherrscht.
Wo stehen wir heute beim Testen mit KI?
Als wir im Vor-Internetzeitalter (Mailboxen im FIDO®- und ZERBERUS®-Netz) auf schwachbrüstigen 80386- und 80486-PCs unsere Software betrieben, in die man sich mittels Modems einwählen musste, hatten wir schon Chatbots, die auf Basis des Erlernten Sätze auf gestellte Fragen erstellen konnten. Der Lernraum war auf das begrenzt, was wir dort in einer Maschine hinterlegten. Insofern hat sich die Menge des Lernmaterials heute um ein Vielfaches durch die letzten Jahrzehnte erweitert und natürlich die enorme Leistung und die nun sehr weite Vernetzung der Maschinen selbst. Die Idee des maschinellen Lernens (ML) und der Interaktion mit den Maschinen ist aber noch älter, nur waren damals die technischen Möglichkeiten sehr begrenzt es umzusetzen.
Der Hype um maschinelles Lernen ist, wie auch vor einiger Zeit die der Blockchain-Technik, der Verbreitung von Informationen heutzutage geschuldet. Weder die Blockchain noch maschinelles Lernen wird alle unsere Herausforderungen lösen. Schlimmer noch: Es wird wieder ITler:innen geben, die Probleme mit ML erschlagen wollen, wo gut geschriebene Algorithmen auch reichen würden, jedoch deutlich weniger Strom verbrauchen würden.
Künstliche Intelligenz (KI), wie wir sie manchmal definieren (à la „Terminator“-Filme) gibt es, auch in den nächsten Jahren, nicht. Das sagte Prof. Dr. Dagmar Monett Díaz, die an der TU Berlin einen Lehrstuhl für KI innehat, schon 2021 auf den Agile Testing Days:
„There are no truly intelligent artifacts on the horizon yet” (Quelle)
Wir stehen also am Anfang einer Technologie, die wir mitnichten beherrschen und, wie mit allen neuen Technologien, sollte man optimistisch nach vorne blicken, aber auch mal an die Konsequenzen denken – Risikoanalyse muss und ist einer der wichtigsten Bausteine, die ein:e Tester:in beherrschen muss. Im Falle von schlecht trainierten neuronalen Netzen kann es sehr negative Folgen für Menschen haben, insofern sollten wir das Vertrauen, dass Menschen [nicht] in IT haben, nicht [noch weiter] verspielen. Generierte Falschinformationen sind bei dem heutigen Verbreitungsgrad sehr schnell nicht mehr zurückholbar. Schon jetzt haben wir manchmal keine schnelle und gut Verteidigungslinie gegen Identitätsdiebstahl oder Einbrüche in kritischer Infrastruktur, aber wenn dieses nun durch ML noch schneller und perfider möglich sein wird, kann nicht nur alles Gute, sondern muss auch das Schlechte gesehen werden.
Wie wird KI Softwaretesten in den kommenden fünf Jahren verändern?
Der Hype wird abgeebbt sein und der Realismus wird Einzug gehalten haben (vgl. Blockchain). Manche Dinge, wie bspw. die Art digital zu suchen, Assistenz-, Auskunfts- und Vorhersagesysteme … werden verbessert worden sein. D.h. es werden weiter Arbeitsvorgänge automatisierter ablaufen als heute, da bspw. das Auslesen und kontextuelle Zusammensetzen von Informationen aus Datenbeständen eine Maschine einfach besser und schneller beherrschen wird als ein Mensch. Menschen werden dann wieder andere komplexere Aufgaben angehen können, die eine Maschine bspw. ohne menschliche Intuition nicht fehlerfrei ausführen kann.
Das war auch schon so, als die ersten IT-Systeme und Robotik in der Industrie eingesetzt wurden: Schwere, aber auch langweilige und wiederkehrende immer dieselben Aufgaben wurden durch Maschinen ersetzt und die Menschen wurden für andere Dinge eingesetzt. Musste man seinerzeit noch Paletten von Hand mit der Ware vollstapeln, machen das heute Roboter viel exakter. Tester:innen mussten seinerzeit Prüfmethoden entwickeln, wie man die Robotervorgänge prüfen kann, bevor sie zum Kunden gingen.
Für Tester:innen bedeutet das, dass wir Unterstützung beim Testdesign, der Testautomatisierung und der Auswertung bekommen werden und uns komplexeren Testaufgaben widmen können. Schwieriger wird für uns aber die Vorhersagbarkeit von Testergebnissen und auch etwaige Fehlernachstellungen sein. Es wäre schön, wenn auch dafür es neue Tracing-Technologien und Testorakel geben würde, die uns mit dieser Fragestellung nicht allein lassen. Ich befürchte aber, dass Testen leider, wie so oft, als das Stiefkind des ML-Zeitalters sein wird und wir dann erst wieder nachflicken müssen.
Welche Skills benötigen Testerinnen und Tester dafür?
Wir werden lernen müssen, wie wir die ML-Systeme steuern können, bspw. Prompt Engineering wird zum Basisbestandteil der Rolle in der Software-Qualitätssicherung gehören. Wir müssen auch tiefer in die Wahrscheinlichkeitsfindung und -vorhersage abtauchen, um Methoden zu schaffen, wie wir Antworten von ML-Systemen besser interpretieren können. Die Zusammenarbeit mit den Codierer:innen, die diese ML-Systeme bauen, muss noch viel stärker erfolgen, da bei den Anforderungen schon ethische, datenschutzrechtliche oder auch sicherheitsrelevante Prüfungen mit abgestimmt werden müssen. Ist das Modell erst einmal „erschaffen“, ist es sehr schwer nachträglich „Qualität dort hineinzutesten“ – das kennen wir doch.
Wird es die Rolle des Testens in 10 Jahren noch geben?
Die Frage wird sich anscheinend auch nur in der Informatik gestellt. Hersteller von Lebensmitteln würden nie fragen, ob es Menschen geben muss, die die Qualität der ausgelieferten Ware in irgendeiner Form sicherstellen. Maschinenbauer:innen würden auch niemals in eine Maschine einsteigen, sei es ein Flugzeug oder ein Auto, das nicht zuvor auf Herz und Nieren geprüft wurde.
Warum die Informatik daran glaubt diese Rolle abschaffen zu können, wird wohl ein Rätsel bleiben, was ich mit ins Grab nehmen werde.
Wie auch immer man die Menschen in dieser prüfenden Rolle nennen wird, es wird sie geben und sie müssen sich noch stärker einbringen und spezialisieren als heute.