Nachfolgend möchte ich euch an den Kernaussagen der am 03.07.2024 stattgefunden Konferenz „Generative AI (Artificial Intelligence) Testing“ teilhaben lassen.
Generative KI ist derzeit in aller Munde und schon sehr verbreitet im Einsatz. Verdeutlicht wird das z. B. an der Anzahl der Tools in der Anbieterlandschaft. Waren es 2022 noch 1.588 Tools wuchs die Anzahl im Jahr 2023 auf 36.320, das entspricht ca. 2.287 % Steigerung! Tendenz für 2024 weiterhin anwachsend. Seit 2022 übernimmt die KI auch eine zunehmend größere Rolle im Bereich der Qualitätssicherung von Software.
Nachfolgend ein Einblick in die Stärken und Schwächen der derzeit gängigsten Tools und Techniken von KI in der Qualitätssicherung:
Large Language Models (LLMs):
Stärken
- Natürliche Sprachverarbeitung: LLMs, wie GPT-4, sind hervorragend darin, natürlichsprachliche Texte zu verstehen und zu generieren. Dies ermöglicht es, Benutzerfeedback automatisch zu analysieren und daraus wertvolle Erkenntnisse zu gewinnen.
- Automatisierte Code-Überprüfung: LLMs können zur automatisierten Überprüfung von Quellcode eingesetzt werden, um Fehler und Sicherheitslücken zu identifizieren.
- Wissensdatenbank: Durch ihre immense Trainingsdatenbasis können LLMs als umfangreiche Wissensdatenbanken dienen, die Entwickler:innen bei komplexen Fragestellungen unterstützen.
Schwächen
- Rechenintensität: Der Einsatz von LLMs erfordert erhebliche Rechenressourcen, was in kleineren Projekten zu einem Kostennachteil führen kann.
- Verständnis der Kontextabhängigkeit: Obwohl LLMs fortgeschritten sind, haben sie immer noch Schwierigkeiten, den Kontext in langen und komplexen Softwareprojekten vollständig zu verstehen.
- Abhängigkeit von Trainingsdaten: Die Genauigkeit und Zuverlässigkeit der Ergebnisse sind stark abhängig von der Qualität und Aktualität der Trainingsdaten.
Support Vector Machines (SVMs):
Stärken
- Effektivität bei kleinen Datensätzen: SVMs sind besonders effektiv, wenn nur begrenzte Datenmengen zur Verfügung stehen, weil klare Trennlinien zwischen Klassen gezogen werden.
- Hohe Genauigkeit: In vielen Anwendungsfällen, insbesondere bei klassifikatorischen Problemen, bieten SVMs eine hohe Genauigkeit.
- Robustheit gegen Überanpassung (Overfitting): Durch den Einsatz von Regularisierungstechniken sind SVMs weniger anfällig für Overfitting, was sie robust und zuverlässig macht.
Schwächen
- Komplexität der Parametereinstellung: Das Feintuning von SVM-Parametern kann komplex und zeitaufwändig sein.
- Skalierbarkeit: SVMs stoßen bei sehr großen Datensätzen schnell an ihre Grenzen, da die Rechenzeit exponentiell mit der Anzahl der Datenpunkte steigt.
- Schwierigkeit bei der Verarbeitung nicht-linearer Daten
Nach der detaillierten Analyse der typischen Herausforderungen in Software-Qualitätssicherungsprojekten, wurden im Vortrag folgende Lösungsansätze erörtert:
- Kombination von LLMs und SVMs: Die Kombination beider Ansätze kann die Stärken beider Methoden nutzen und deren Schwächen ausgleichen. Beispielsweise könnten LLMs zur Vorverarbeitung und Strukturierung von Textdaten verwendet werden, die dann von SVMs für die Klassifizierung genutzt werden.
- Iterative Verbesserung durch Feedback-Schleifen: Der Einsatz von LLMs zur kontinuierlichen Überwachung und Analyse von Benutzerfeedback ermöglicht es, Fehler frühzeitig zu erkennen und iterativ Verbesserungen einzuführen.
- Anpassung und Feinabstimmung der Modelle: Durch die regelmäßige Anpassung der SVM-Parameter und das kontinuierliche Training der LLMs kann eine hohe Genauigkeit und Effizienz in der Qualitätssicherung erreicht werden.
- Skalierbare Infrastruktur: Der Aufbau einer skalierbaren Infrastruktur, die sowohl die Rechenanforderungen von LLMs als auch die Datenverarbeitungsanforderungen von SVMs berücksichtigt, ist entscheidend für den erfolgreichen Einsatz beider Technologien.
Ein weiteres Thema war der Einsatz von KI innerhalb des Testprozesses, der derzeit bereits Sinn ergibt. Dargestellt anhand der einzelnen Teststufen.
Fazit
Die Integration von künstlicher Intelligenz in die Qualitätssicherung von Software bietet enorme Potenziale zur Verbesserung von Effizienz und Genauigkeit. Die Möglichkeiten von LLMs und SVMs sollten in den jeweiligen Projekten erkundet und nach erfolgter Analyse und Absprache in die Arbeitsabläufe integriert werden. Hierbei sind die gesetzlichen Bestimmungen und Vorgaben des jeweiligen Kunden zu beachten. Die große Zukunftsvision ist der Zusammenschluss vieler kleiner KIs in Form einer Toolkette/Pipeline als Folge „Zusammenarbeit der KIs“. Bei allen Tätigkeiten in diesen Bereichen sollte die Gefahr von „Automation bias“ (Neigung des Menschen, Vorschläge von automatisierten Entscheidungssystemen, ohne Hinterfragen zu übernehmen) im Fokus bleiben.
Ein weiterer Vortrag nahm Stellung zu „Wie verändert Generative AI die Rolle des Testens"
Nachfolgend ein Überblick in Stichpunkten.
Innovative Testmethoden
Automatisierte Testfallgenerierung:
Generative KI-Technologien wie ChatGPT und Gemini ermöglichen die automatisierte Generierung von Testfällen auf Basis von Spezifikationen und Anforderungen. Dies beschleunigt nicht nur den Testprozess, sondern erhöht auch die Testabdeckung, indem Szenarien abgedeckt werden, die menschliche Tester:innen möglicherweise übersehen.
Intelligente Fehleranalyse:
KI-gestützte Systeme sind in der Lage, aus vergangenen Fehlern zu lernen und Muster zu erkennen. Diese Systeme können potenzielle Fehlerquellen identifizieren, bevor sie auftreten, und proaktive Maßnahmen vorschlagen, um die Qualität der Software zu verbessern.
Neue Technologien
ChatGPT und Gemini:
Diese generativen KI-Modelle bieten weitreichende Möglichkeiten für die Unterstützung und Automatisierung im Testprozess. Sie können nicht nur als virtuelle Assistenten fungieren, die Tester:innen bei der Identifikation und Dokumentation von Fehlern unterstützen, sondern auch komplexe Testskripte basierend auf natürlicher Sprache generieren.
KI-gestützte Testautomatisierungswerkzeuge:
Zukünftige Testautomatisierungswerkzeuge werden zunehmend KI-Algorithmen integrieren, die in der Lage sind, sich selbst zu verbessern und an neue Softwareumgebungen anzupassen. Diese Werkzeuge können kontinuierlich lernen und sich weiterentwickeln, was die Effizienz und Effektivität des Testens erheblich steigert.
Funktion des/der Tester:in in der Zukunft
Von der/dem manuellen Tester:in zu der/dem KI-Koordinator:in:
Die Rolle der/des Softwaretester:in wird sich von manuellen, repetitiven Aufgaben hin zur Überwachung und Orchestrierung von KI-gestützten Testprozessen verschieben. Tester:innen werden zunehmend als „KI-Koordinator:in“ agieren, die sicherstellen, dass KI-Systeme korrekt und effektiv arbeiten.
Schwerpunkt auf strategischen Aufgaben:
Mit der Automatisierung von Routineaufgaben durch KI wird der Fokus der Tester:innen auf strategische Aufgaben verlagert. Dazu gehört die Entwicklung von Teststrategien, die Analyse komplexer Probleme und die Gewährleistung, dass die KI-Modelle ethisch und verantwortungsvoll eingesetzt werden.
Erforderliche neue Fähigkeiten
Zukünftige Tester:innen werden Kenntnisse in Bereichen wie Datenwissenschaft, maschinellem Lernen und KI benötigen. Die Fähigkeit, mit KI-Systemen zu interagieren und diese zu trainieren, wird zu einer grundlegenden Kompetenz. Zudem wird die Zusammenarbeit mit Entwickler:innen und Data Scientists (Datenwissenschaftler:innen) wichtiger denn je.
Fazit
Die Transformation der Rolle der Softwaretester:innen durch generative KI ist unvermeidlich und bietet enorme Chancen für die Weiterentwicklung der Qualitätssicherung. Softwaretester:innen und Qualitätsmanager:innen sollten sich mit den neuesten KI-Technologien vertraut machen und ihre Fähigkeiten entsprechend weiterentwickeln. Es bieten sich derzeit Chancen, die Zukunft der Softwarequalitätssicherung aktiv mitzugestalten. Die Kernaussage des Vortrages zum Sachverhalt Tester:in kann durch KI ersetzt werden: „Wenn Software durch Menschen genutzt wird, sollte sie auch durch Menschen geprüft werden.“ Somit verschiebt sich nur der Fokus.
Danach folgte der Vortrag „Barrierefreiheitstesten von Webanwendungen unterstützt durch KI"
Von diesem Vortrag war ich etwas enttäuscht. Eigentlich wurde nur das kostenpflichtige Tool webmate der Firma Testfabrik von der Idee bis zur Umsetzung vorgestellt. Das Tool ist aktuell in der Lage den/die Tester:in automatisiert beim Test der Bestimmungen gem. WCAG 2 zur Barrierefreiheit zu unterstützen. Ein vollständiger automatisierter Test ist nach Aussage des/der Vortragenden erst in ferner Zukunft möglich.
Zur Erinnerung: Was sind noch mal WCAG (Web Content Accessibility Guidelines)?
Ziel ist es, Webinhalte für Menschen mit Behinderung zugänglich zu machen.
Die Anforderungen lauten:
Wahrnehmbar, bedienbar, verständlich und robust.
Warum 5 vor 12? Selbsterklärend durch die Redensart ist der Tag um zwölf Uhr nachts unwiederbringlich beendet und daraus ergibt sich der Fakt, dass das nicht erledigte Soll dieses bestimmten Tages auf ewig unerledigt bleibt.
→ Also wagt den Sprung in die Zukunft und bleibt neugierig.
Seminarempfehlung
MACHINE LEARNING BASICS DB-AI-01
Mehr erfahren