Hallo und herzlich willkommen zu einer neuen Folge von Podcast Software Testing. Ich bin dein Host Ritschi und habe wieder eine Folge vom QS-Tag 2023 aus Frankfurt mit dabei. Diesmal im Gespräch Nils Röttger und Gerhard Runze, die sich schon lange mit dem Thema Qualitätssicherung bei künstlichen Intelligenzen auseinandersetzen. Eine sehr spannende Folge, wo wir mal draufschauen, was heißt denn eigentlich Qualität bei einer KI, welche Qualitätsmerkmale gibt und wie kann ich
diese testen. Das Gespräch hat meine Perspektive auf Testen von KI nochmal verändert und mich da auf ganz neue Gedanken gebracht. Beide sind auch Autoren des Buches Basiswissen KI testen, das gerade im D-Punkt Verlag erschienen ist und wer die Folge bis zum Ende hört, der hat natürlich auch die Möglichkeit an der Verlosung teilzunehmen, wo du dieses Buch gewinnen kannst. Aber jetzt viel Spaß bei der Folge. Hallo, schön, dass ihr da seid. Ja, schön. Danke, dass wir dabei sein dürfen.
Das finde ich auch ganz toll. QS-Tag 2023 hier in Frankfurt, ganz viele spannende Themen und ihr habt ja ein Megaburner-Thema, nämlich es ist ja gerade so der heiße Scheiß KI und alles drum und dran. Ihr beschäftigt euch ja mit KI, habe ich so vernommen. Und in letzter Zeit, ich werde immer wieder gefragt, wie testet man denn eigentlich eine KI? Und die Frage schmeiße
ich euch jetzt einfach mal hin. Ja, es ist gar nicht so einfach. Und die Frage, die du jetzt gerade uns stellst, die haben wir uns natürlich auch schon gestellt, ist echt schon auch ein paar Jahre her, vier, fast fünf Jahre schon mittlerweile. Da haben wir, wir sind zusammen in der gleichen Firma bei Imbus und haben da uns ein internes Projekt überlegt, wie wir genau diese Frage beantworten können. Naja, Ziel war auch erst mal,
ein bisschen Erfahrung zu sammeln. Also in der Zeit, da war jetzt noch nicht Chat-GPT-Hype da, aber KI natürlich. Viel haben mit KI getestet, aber das Testen von KI war zu dem Zeitpunkt noch nicht so im Vordergrund. Und da haben wir uns genau diesen Punkt rausgesucht und haben überlegt, wie kriegt man das im Griff? Was sind so die Kriterien? Was sind so die Merkmale? Auf was muss man achten? Wie kann man vorgehen? Haben selber KI-Strengthiert und versucht rauszukriegen,
wie sie funktionieren oder wie sie scheitern? Nils, da haben wir diverse Erfahrungen gemacht. Ja, das stimmt. Kann ich ja gleich mal erzählen. In diesem einen Schwank, und zwar haben wir eine Heizungssteuerung, da können sich die Zuhörer auch was darunter vorstellen, so eine Smart-Steuerung für eine Heizung. Da kann man die Temperatur einstellen, kann irgendwas regeln. Und wir wollten mit Bilderkennung rausfinden, also die KI sollte rausfinden, was ist da gerade eingestellt.
Also stellt euch einen Testfall vor, läuft die ganze Nacht und nachts um drei wird ein Foto gemacht und dann soll die KI sagen, ja, da steht gerade das und das drauf. Und dann haben wir das gemacht, haben die KI belernt und dann hat die nicht so richtig funktioniert. Also Genauigkeit war immer so bei 40 Prozent mal 45. Dann kam der Kollege, hat gesagt, ich habe 68, wow. Aber das reicht natürlich so lange nicht aus. Und dann haben wir so eine sogenannte Heatmap darauf gelegt
und haben geschaut, wo lernt denn die KI eigentlich. Und was wir total übersehen hatten, war, dass auf allen Fotos ein Zeitstempel war von der Kamera. Und dann hat die KI den Zeitstempel gelernt und sonst nichts. Das war ein richtiger Aha-Erlebnis für uns und für die Kollegen, die das auch gemacht haben. Und da können wir heute noch von erzählen in den Vorträgen oder auch heute im Podcast. Ja, so kann es gehen. Also wenn du etwas Falsches lernst, also Shade in, Shade out, dann hast du
ein Problem hinterher. Und dann war das natürlich, wie gehen wir da jetzt ran? Und dann sind wir auch darauf gekommen, wir müssen uns ganz viel mit den Daten beschäftigen. Was haben wir denn eigentlich für Daten? Und auch da, also der Begriff Testdaten zum Beispiel, das wird ja im Bereich KI verwendet, in einem KI-Workflow. Da brauche ich Testdaten, um das Netz zu belernen. Und wir als alte Eis-Kubi-Hasen, weißt du auch, Testdaten, das was wir zum Testen nehmen. Aber was völlig
unterschiedlich ist. Und dann muss man diese Begrifflichkeiten auch lernen, um auseinander zu halten. Und dann kam auch ziemlich schnell der Lehrplan, damals noch vom A4Q. Die haben sich damit beschäftigt und haben einen Lehrplan rausgegeben zu dem ganzen Thema. Da ging es dann auch schon um Begrifflichkeiten, Definitionen. Dann ist Eis-Kubi dazu gekommen, hat den Lehrplan rausgegeben, CTI. Der wurde, glaube ich, letztes Jahr, Gerhard, veröffentlicht.
Der ist vorletztes Jahr schon raus, 21 schon rausgekommen. Der deutsche kam raus. Deutsch und Englisch dann im letzten Jahr. Englisch und dann Deutsch im letzten Jahr, so was, genau. Genau. Und der Gerhard und eine Kollegin von uns, die Verena, die hatten damals schon für A4Q Schulungen gehalten, zu dem A4Q Lehrplan noch. Und die Verena war auch mit in diesem Projekt mit dabei. Wir haben ganz viel zusammen gemacht und dann haben wir irgendwann gesagt, wir müssen
uns da noch mehr mit beschäftigen. Und haben dann gesagt, okay, dann schreiben wir doch ein Buch zu dem Eis-Kubi CTI. Ja, da kommen wir dann auch gleich dazu. Und so ist es halt gekommen, dass wir uns da ganz viel mit dem Thema beschäftigt haben. Ja, wie testet man KI? It depends.
Ja, it depends. Wir müssen schon ein bisschen reingehen. Also was kann ich denn machen? Wie kann ich denn so eine KI irgendwie qualitätsabbringen, sozusagen, dass ich sagen kann, okay, ich weiß, das tut irgendwie das, was es soll? Qualität ist ja auch erst mal die Frage, was meine ich damit? Also aus der klassischen Sicht kennt man so Qualitätsmerkmale, so Qualitätskriterien. Das kennt man, da gibt es dann
die Funktionalität, da gibt es die Performance, da gibt es die Portierbarkeit. Das sind so diese Klassiker aus dem Qualitätsmanagement von Softwarequalität. Aber das ist ja auch KIs normale Software und die gilt da natürlich auch, aber das ist nicht alles. Da kommt noch mehr dazu. Und auch Teil dieser Lehrpläne ist eben darauf einzugehen, welche Qualitätskriterien,
welche sind neu, welche verändern sich. Ich glaube, was mittlerweile jeder weiß, das ist, dass Funktionalität nicht mehr nur ein Ja/Nein ist, sondern ein, naja, meistens, also eine statistische Größe. Also da geht es um, Nils, du hast es gerade gesagt, um Genauigkeit, um Präzision, um Sensitivität und da gibt es ganz viele Metriken, um diese funktionale Performance, um diese funktionalen Leistungsmetriken, wie sie so ganz offiziell heißen in diesem Fachjargon.
Das ist eines von den Qualitätsmerkmalen. Dann gibt es Merkmale wie Autonomie. Wie autonom kann ein System selbst agieren? Wie lange kann es das tun und unter welchen Bedingungen und Voraussetzungen gibt es diese Autonomie wieder zurück? Denken wir an so ein selbstfahrendes Auto oder ein automatisiert fahrendes Auto, wie wir es heute ja noch haben. Die fahren auch nicht auf immer und ewig, sondern irgendwann ist mal der Spurassistent und sagt, "Nee, jetzt geht es
hier nicht mehr um die Hände ans Lenkrad." Da muss man sich überlegen, wie testet man das alles. Also was wir Tester ja gar nicht mögen, auch wieder aus dem Klassischen, wir wollen immer Pass oder Fail. Wir wollen 1-0. Geht nicht. Wir wollen bestimmt nicht, ja vielleicht Pass.
Ich weiß nicht, da kennen vielleicht auch einige Zuschauer noch die Geschichte von, was war das, dieses AlphaGo und eins der ersten AlphaGo oder keine Ahnung, wo es dann gespielt hat gegen den Weltmeister im Go-Spiel und dann die Entwickler bei Google gesagt haben, "Was macht denn der da? Ich weiß das nicht. Was passiert denn da? Wieso macht er das?" Und das ist ja auch etwas, was wir bei den Testschritten hassen als Tester. Wir wollen
halt eigentlich bei jedem Testschritt sagen, "Jo, richtig oder nicht richtig." Und jetzt bei KI ist es dann so, dass wir vielleicht am Ende dann von den ganzen, nehmen wir mal 100 Testschritte sind da zwischen, am Ende können wir sagen, "Jo, war gut." Und dazwischen haben wir aber nichts. Ja. Und da muss man sich dann Sachen überlegen. Auf jeden Fall dann bei diesen Messungen, die du jetzt schon erwähnt hast. Ja, bei den Messungen und du hast auch gerade gesagt,
also was soll rauskommen? Heißt auch, wir wissen nicht, also wir haben nicht die Spezifikation des Systems, also dieses Testorakel, das ist das Stichwort, was da immer fällt, das uns sagt, genau so muss das System arbeiten. Muss. Das gibt es da nicht mehr. Genau so sollte es in normaler Weise arbeiten. Manchmal tut es halt nicht, aber vielleicht ist das ja noch okay. Und das sind die Schwierigkeiten. Einen Apfel zu erkennen bei einer Bilderkennung fällt uns
Menschen leicht, weil klar, wir wissen, was ein Apfel ist. Es kann aber schon passieren, dass so eine KI dann halt einen Apfel nicht als Apfel erkennt, was durchaus erlaubt ist. Und dann wird es, dann ist die Frage, wie soll ein Testfall ausschauen? Soll er das zulassen? Soll er das nicht zulassen? Dann wird es statistisch. Und an der Stelle ist dann auch die Frage, ja, ich komme jetzt, ich drehe mal den Bogen wieder zurück zu einem Lehrplan und wie testet man KI? Wie schreibe
ich jetzt da einen Testfall? Der Testfall kann natürlich nicht lauten, ich gebe genau dieses Bild rein und da muss genau ein Apfel rauskommen. Und wenn das einmal gemacht wurde, dann stimmt es. Da muss man ganz viele Äpfel nehmen oder ganz viele Bilder nehmen und schauen, ob das ein Apfel ist. Wie viele muss ich nehmen? Das sind dann genau die Fragen, die man sich stellen muss. Und dann gibt es Methoden. Und das sind die Testmethoden, die auch dann da im Lehrplan verortet sind,
wie man neue Ideen für Bilder bekommt. Also ein Apfel oder eine Aprikose, die so ähnlich wie ein Apfel aussieht oder so groß ist oder eine ähnliche Farbe hat oder oder. Und dann gibt es Methoden, wie man da auf neue Testfälle, auf neue Daten kommen kann. Und die sind da zum Beispiel, Metamorph ist Testen, ist eine der Verfahren, eine der Methoden, die es da gibt.
Können wir gleich noch ein bisschen was erzählen. Ich wollte mal ganz kurz an ein Qualitätsmerkmal, was mir auch wichtig ist oder was ja auch viele diskutieren, diese ethischen Geschichten. Darf das Auto jetzt links rumfahren, rechts rumfahren? Und ich glaube, dass wir auch als Tester da in Zukunft mehr mit zu tun bekommen, weil wir dann auch zurückfahren müssen. Wie ist das mit der Anforderung? Was soll denn jetzt die KI eigentlich
wirklich an der Stelle machen? Es ist dann nicht mehr so klar. Also in einer Unfallsituation fährt das Auto in irgendeine Richtung und wie soll sich das Auto denn entscheiden? Oder soll es, was du gesagt hast, die Autonomie, also soll es die Fahrerei wieder an den Menschen zurückgeben, der da sitzt? Und diese ethischen Aspekte spielen eine Rolle. Transparenz möchte ich unbedingt noch erwähnen. Das ist auch für uns Tester, glaube ich, ganz wichtig herauszufinden
oder zu verstehen, wie die KI tickt. Warum entscheidet die KI jetzt so? Weil sonst kann ich als Tester ja keine Qualität messen. Ich muss da irgendwie reingucken können. Da sind noch so ein paar Sachen. Ich war hier auf dem Quest-Tag. Ich glaube, die Keynote war auch so in der Richtung Transparenz. Da gibt es einige Forschung dazu. XAI heißt das Ganze dann, Explainable AI. Wenn das interessiert, auch unbedingt mal reinschauen. Damit werden wir
auch immer mehr zu tun bekommen, denke ich. Ich habe verstanden. Also eigentlich brauche ich als Tester ja eine ganz neue Denken. Ich bin gewohnt, meine acht, sieben oder neun Qualitätskriterien, je nachdem, wo ich gerade hinschaue, meine Merkmale, die ich prüfen kann, die sind meistens auch sehr klar. Meine Testfälle sind sehr einfach. Ja, nein. Und jetzt habe ich auf einmal ganz andere Qualitätskriterien und ich muss mir echt mal nochmal Gedanken machen,
was heißt Qualität für mich dann in der Gegenfält. Das ist einfach jetzt eine neue Definition. Und dann habe ich auch Testfälle, die nicht mehr sind, klick da, das kommt raus, sondern ich habe quasi mit viel mit Trainingsdaten zu tun, mit Statistik dahinter, mit Wahrscheinlichkeiten, mit Unglaublichkeiten, die ich einfach noch da in den Testfällen noch mit einpreisen muss oder mit mir mit überlegen muss. Das heißt, so ein Testfall, das ist jetzt auch nicht mehr so schnell hingeschrieben.
Ja, das stimmt. Wobei man natürlich auch sagen muss, wenn man jetzt nicht sagen, das ist alles anders, wir müssen alles neu machen, so ist es ja auch nicht. Die ganze KI, letzten Endes, du hast gesagt, KI ist auch nur Software. Wir haben vielleicht ein großes Gesamtsystem und in das betten wir eine KI-Komponente ein. Das heißt, das, was wir früher gemacht haben, Performance-Tests, Usability-Tests der Software in sich, Registrieren-Tests,
Anforderungsanalyse, dieses ganze Zeug muss man natürlich trotzdem machen. Das fällt nicht einfach weg. Aber da, wo es um die KI-Komponente geht, da muss man, da gebe ich dir völlig recht, umdenken, teilweise neu denken und das eben auch mit anderen Methoden angehen an dieser Höhe. Habt ihr denn dann noch ein, zwei andere Methoden, wie man Testfälle, ich setze immer auf die Anführungszeichen, vielleicht finden Sie es gar nicht mehr so sehr Testfälle,
aber wie man so Tests gestalten kann? Also ich habe im Klassischen, da habe ich meine Equivalence-Klasse, meine Grenzwerte, Entscheidungs-Tabelle, tralala. Jetzt hast du hier schon Metamorphis-Testen. Genau, was gibt es denn da noch? Vielleicht sollten wir Metamorphis-Testen noch ein bisschen erklären. Also ich habe oft,
haben wir auch schon gesagt, das Problem, dass ich nicht weiß, was rauskommen soll. Jetzt kann ich aber sagen, beim Metamorphis-Testen kann ich so rangehen, wenn ich die Daten oder die Eingabe ein Stück weit verändere, wo ich weiß, dass diese Veränderung nichts an dem Beispiel ändert. Also nehmen wir mal ein konkretes Beispiel, ich mal ein Dreieck und wenn ich alle Seiten um fünf Zentimeter verlängere, dann ist es immer noch ein Dreieck. Und das ist eigentlich schon diese metamorphe
Relation. Also ich habe etwas mit den Daten gemacht, wo ich weiß, dass an dem Dreieck dann eben nichts passiert. So und jetzt kann ich sagen, ich weiß zwar nicht, was die eigentliche Ausgabe ist, wenn ich aber die Eingabe, die ich mache, so verändere, dass die Ausgabe dann trotzdem die
gleiche sein muss. Dann kann ich dadurch durch dieses Metamorphis-Testen ein Stück weit mehr Vertrauen gewinnen, weil ich weiß, dass der Algorithmus oder die Software oder die KI, zumindest bei dieser Veränderung, die ich vorgenommen habe, die eigentlich bei meiner Ausgabe nichts verändern soll, da macht sie es richtig. Das ist schon mal ein Vertrauensbeweis, den ich dann habe und kann einfach schon mal anders mit umgehen. Und wenn ich mehrere dieser
metamorphen Relationen anwende, dann gewinne ich noch mehr Vertrauen. Ich weiß immer noch nicht, was eigentlich rauskommen muss, aber ich weiß, dass sie da zumindest in den Teilen richtig gearbeitet hat. Und da kann man auch ganz lustige Experimente machen. Nehmen wir mal als Beispiel nochmal das Dreieck. Ich male einen Dreieck und habe einen Bildklassifikator, den ich eben diese Formen lernen lassen möchte und ich lasse das Dreieck lernen und ein Quadrat und einen Kreis.
Und alle male ich mit Blau. Dann wird dieser Klassifikator sehr wahrscheinlich Dreieck erkennen, Viereck erkennen, Kreis erkennen. Wenn ich beim Belernen jetzt aber verschiedene Farben nehme für die Formen, also ich male einen roten Kreis, ein blaues Rechteck und ein gelbes Dreieck, dann könnte es passieren und in Teilen passiert das dann auch mit diesen Tools, dass der Klassifikator nicht mehr anhand der Form entscheidet, sondern anhand der Farbe.
Und jetzt Metamorphorelation im Test. Metamorphore ich dann nämlich die Farbe. Also ich weiß nicht mehr, was ich jetzt gesagt hatte. Blauer Kreis war zum Lernen da und dann nehme ich einfach ein blaues Rechteck und dann sagt mir die KI auf einmal, ja, das ist ein Kreis. Und da habe ich durch diese Metamorphorelation quasi herausgefunden, dass die KI da doch nicht sauber arbeitet bzw.
falsche Prioritäten in ihrem Lernnetzwerk da irgendwie drin hat. Naja, falsche Merkmale, die sich ausgezogen hat, eben die Farbe als Merkmal herausgezogen hat, obwohl sie eigentlich keine Rolle spielen dürfte. Und das nutzt diese Metamorphorelation aus, die Dinge, die eigentlich keine Rolle spielen, zu variieren, um das herauszutesten. Ah ja, verstehe. Das ist eine ganz spannende Methode. Für mich ein ganz neues Denken auch.
Also du hast gesagt, wir müssen da schon noch ein bisschen anders rangehen. Ja, spannenderweise gibt es das Metamorphotesten schon länger. Es ist gar nicht so neu, aber das ist jetzt halt gewinnende Neubedeutung. Gerade dann, wenn wir eben nicht wissen, was rauskommt, Testorakelproblem, gerade vorhin gesagt. Wenn das fehlt, dann kann man hier tatsächlich noch ein bisschen mehr Testideen sich ausdenken. Und man kann ja sagen, KI kann man überall nutzen,
aber da ist auch echt wieder Fantasie der Menschen gefragt. Was könnte da neue Testideen bringen? Welchen Parameter, zum Beispiel jetzt mit der Farbe, könnte ich variieren, um da einen anderen Metamorphotest auszumachen? Du hast eben gesagt, das kennen wir schon lange. Es gibt noch andere Methoden, die wir eigentlich auch schon lange kennen beim ISD-KoB. Pairwise-Testing. Ich habe ganz viele Eingabemöglichkeiten und möchte die dann paarweise oder alle Kombinationen sind viel
zu viel, dann habe ich viel zu viele Testfälle. Also hat man sich überlegt, wie kann ich das denn lösen? Und Pairwise-Testing haben wir auch vor zehn Jahren schon mal irgendwie gehört. So, jetzt ist aber typischerweise so, bei KI, da haben wir auch ganz viele Parameter. Das heißt, wir haben da auch ganz viele Parameterkombinationen, die wir eigentlich im Test gegebenenfalls nutzen
wollen. Und deswegen ist auch da wieder Pairwise-Testing zum Beispiel. Auch eine Methode, die war jetzt in dem, ja, ich will nicht sagen, wird auch eine neue Bedeutung, die war genau super zum Testen, aber kann man hier auch sehr gut anwenden. Oder ein anderes Beispiel, wir haben
vielleicht noch AB-Testing, kennen auch viele, auch schon gemacht. Gewinnt jetzt hier auch wegen dem Test-Orakel-Problem auch wieder an Bedeutung, dass ich einfach zwei, ja, vielleicht habe ich sogar zwei, wenn ich das Budget habe, zwei verschiedene Entwicklungsabteilungen, die zwei KIs lernen, die dasselbe Ziel haben und hinterher nehme ich dann halt zwei verschiedene Anwendergruppen, die dann einfach mal draufgucken und das Ganze bewerten. Ja, so funktioniert der AB-Testing
eigentlich immer. Wie sieht es denn so im Bereich vom Tooling aus? Merkt ihr da schon, dass da jetzt Werkzeuge entstehen, die das immer mehr auch unterstützen? Oder habt ihr vielleicht auch schon gute Beispiele, da entstehen auch gute Test-Tools? Im Klassischen, da sind wir ja gut versorgt mit Automatisierungstools für alle Ebenen, die wir da nutzen können, oder Datengeneratoren oder so was. Wie sieht das da im KI-Umfeld aus? Ist da schon brauchbares Material
da? Ja, da tut sich ein bisschen was, aber tatsächlich ist der Tool-Bereich fokussiert weniger jetzt auf das Generieren oder das Testen von KI und Tool-Unterstützung dafür. Da gibt es ein paar, aber die Tool-Unterstützung ist eher, ich möchte lieber KI einbauen in so ein Tool, um klassische Software zu testen. Da sieht man enormen Hype. Ich habe es ja vorher auch gesagt, das kam sogar noch vor dem Testen von einer KI, lieber Testen mit KI, weil wir spielen gerne
und wollen neue Sachen ausprobieren. Das ist völlig menschlich und auch gut so. Aber es gibt so ein paar, also was wir auf jeden Fall nutzen und sehen, ist, dass die generativen KIs eine große Bedeutung gewinnen, wenn wir zu wenig Testdaten haben zum Beispiel. Das ist eine der, und Testdaten meine ich jetzt tatsächlich im klassischen Sinne, wenn wir uns mehr Testfälle für eine KI überlegen müssen, mehr Daten brauchen, um sicherer zu werden. Wir haben aber keine große
Zahl realer Daten. Dann sind tatsächlich generative KIs, die Text erzeugen für Chatbots, die Bilder erzeugen für Personenerkennung, die Daten erzeugen, synthetische Datenerzeugung für Finanzwesen oder so, die sind tatsächlich hierfür nutzbar. Ob sie jetzt explizit dafür gebaut wurden, ich würde sagen, man kann sie dafür gut nutzen. Ja, auf jeden Fall. Was man immer machen kann als Tester, denke ich, ist auch mal ChatGBT benutzen, um mal einen Test verschreiben zu lassen. Das hat
doch bestimmt schon jeder gemacht. Auf jeden Fall. Einfach, um es mal auszuprobieren. Das sollte man ja eh in den Alltag einfließen lassen, einfach zu spielen und auseinandersetzen. Weil du gerade ChatGBT gesagt hast, ich hatte gerade vorhin so ein Gespräch, die Verwendung von ChatGBT kann am Anfang ganz schön frustrieren, weil gerade wenn man ein guter Tester ist und weiß, was rauskommt, dann ist man sehr schnell, wenn man nicht viel tut, enttäuscht und sagt,
ja, das kann ich aber besser. Oder da hätte ich mir mehr erwartet. Da meine Empfehlung sich nicht frustrieren zu lassen, sondern dran zu bleiben, ein bisschen mit den Pumps zu spielen. Da lässt sich noch ganz schön viel rausholen. Also nicht da die Flintdins konnen, aber es geht mehr, glaube ich, als man echt denkt. Und wenn man sich da ein bisschen reinfuchst, kann man sich echt gute Unterstützung holen, die einen nicht ersetzt. Das muss man auch sagen, die wird uns nicht ersetzen,
sondern die erleichtert uns die Arbeit. Aber die wird nicht weniger. Ja, bitte. Ja, du hast ja nach Tools gefragt. Wo sicherlich auch viel Bewegung ist, ist bei den Testautomatisierungstools. Da hast du ja, glaube ich, auch schon in einem oder anderen Podcast. Genau, ja. Da passiert einiges in dem Bereich. Kann der mal bei Richie reinschauen. Ja, genau. So ist es, ja. Eine Sache, die quasi schon im klassischen Testen ja immer ein großes
Thema ist, sind Testumgebungen. Wie man die aufbereitet, hinstellt, virtualisiert, echt, wie auch immer mit den ganzen Umgebungen. Gibt es da bei der KI Unterschiede oder sind die Herausforderungen die gleichen? Oder wie geht man da damit um, wenn ich sowas testen möchte? Na, da gibt es natürlich Unterschiede, weil in der klassischen Software sind Eingabe, Ausgabe, Daten eher strukturiert. Das sind Datenbanken, das sind Tabellen, das sind Sensordaten von
physikalischen Systemen, die einfach strukturiert sind im Normalfall. Für KI-Anwendungen passiert Folgendes, dass die Sensoren, ich sag mal, die Input, die Bandbreite der Inputs wird enorm groß. Das heißt, hier die Art der Daten wird realer und wir können nicht mehr einfach nur mit einem Satz von, jetzt sind wir wieder bei den klassischen Testdaten, ich nehme 25 Testdaten und die stecke
ich in so ein Input-Output-System, sondern ich muss eine ganze Umgebung simulieren. Denkt man ganz autonome Fahnen, also die, die jetzt da zuhören und in dem Bereich tätig sind, die wissen genau, wovon wir da sprechen. Die müssen ganze Städte, ganze Straßenzüge, Gebäude, Passanten, andere Fahrzeuge simulieren, um ihr Fahrzeug zu testen. Und das macht man nicht nur für normale klassische Softwarekomponenten im Auto, sondern insbesondere gerade bei KI-Komponenten, die Kameras haben,
die LIDAR-Sensoren, die Radarsensoren haben. Diese multimodalen Inputs, wie man da immer so schön sagt, die zu simulieren ist nicht so einfach und diese Simulationsumgebungen müssen sehr aufwendig sein, um das sicherstellen zu können, dass das so realistisch wie möglich ist. Ganz realistisch wird es nie werden. Aber das ist eine der größten Herausforderungen in solchen Testumgebungen. Und KI-Systeme sind halt vornehmlich in so eher Realszenario eingebettet, als in, ich sag jetzt mal so,
mit dem Reißbrett vorgezeichneten Szenarien. Und es ist auch unwahrscheinlich teuer. Also wenn du in der Realität testen willst, also auch wieder autonomes Fahren, du brauchst Plattisten und was weiß ich, ein halber Hollywoodfilm. Das ist ja nicht machbar, deswegen muss man sehr viel auf Virtualisierung setzen. Ja, in allen Bereichen. Ja, auch mal auf die Rechenleistung typischerweise. Die ganzen Daten müssen bereitgestellt werden, müssen wiederverwendbar sein, müssen anonym sein.
Also einiges zu tun. Da sprichst du jetzt gerade noch was Schönes an, Wiederverwendbarkeit. Also da denke ich auch gleich mal so eine Reproduzierbarkeit. Das ist ja vielleicht auch so ein heikles Thema, weil bis jetzt ist es ja so, eine Revision, hier, zack, das ist alles. Ich kann den Testfall nehmen mit der Version von damals, IPAE, die Daten und passt alles. So, im Bestfall. Ja, heißes Thema. Heißes Thema, weil da passiert ganz schön viel numerisch und beim
Trainieren, aber eben auch beim Simulieren. Und Reproduzierbarkeit ist enorm schwer herzustellen. Und ich will jetzt nicht sagen unmöglich, aber man muss schon riesen Aufwand treiben, weil halt ganz viel auch mit Zufallsgeneratoren läuft. Zum Beispiel beim Trainieren, da werden die Parameter von neuronalen Netzen sehr oft per Zufall ausgewählt. Da muss man sich eben den Zufall wiederholen können. Also Random Seeds unbedingt mit abspeichern. Das ist das, was die
Frameworks alle machen oder zumindest machen können. Hilft nicht immer. Also nicht jeder Zustand wird tatsächlich konkret festgehalten. Und manchmal lassen sich Ergebnisse nicht reproduzieren. Das ist tatsächlich so. Und es gibt gerade in dem Zusammenhang, gerade autonomes Fahren, das scenariobasierte Testen. Und das habe ich gerade davon gesprochen,
diese simulierten Fahrszenarien. Da ist tatsächlich nicht das Ziel, die reproduzierbar zu machen, sondern zumindest das Szenario so sauber wie möglich zu beschreiben, sodass das Grundprinzip reproduzierbar ist, wenn auch nicht, ich sage mal, bitexakt jeder Durchlauf und jedes Ergebnis. Weil wir haben ja gerade schon gehört, die Statistik macht es aus und dann ist es nicht jedes Ergebnis reproduzierbar, aber die Statistik als solche ist dann reproduzierbar. Und dann hat
man eigentlich sein Ziel erreicht. Vielleicht noch das scenariobasierte Testen auch noch ein bisschen mehr als nur den Begriff. Also es ist dann nicht immer der Testfall, das Auto fährt auf die Kreuzung und es ist rot und was macht es jetzt? Sondern das Auto fährt auf die Kreuzung, es ist rot, von rechts kommt ein LKW, von vorne kommt ein Bus, links ist eine Frau, rechts spielt ein kleines Kind, da oben das Wetter spielt eine Rolle, Sonneneinstrahlung,
das weiß ich. Also da wird viel dieser realen Parameter, die man dann später vielleicht hat, festgehalten. Also viel mehr, früher haben wir dann Nebenbedingungen zugesagt. Klassisch. Und das ist jetzt eine Riesenlatte und deswegen dieses Szenario aufmachen. Ganz viele Parameter. Vielleicht noch ein wichtiger Punkt, nochmal aufgreifen. Reproduzierbarkeit, Normung oder auch überhaupt Standards zu dem ganzen Thema. Wir hatten jetzt schon gesagt, den CTI vom ISTQB,
der hat den A4Q abgelöst, aber es gibt ja noch ganz viele andere Sachen. Zum Beispiel auch die DIN beschäftigt sich damit. Da waren ja du vor allem, Gerhard, beim zweiten Teil war ich auch mit dabei. Die Normungsroadmap und auch da war dann auch diese Diskussion, wie machen wir das denn eigentlich, wenn wir jetzt was normen und wie können wir das machen, wenn wir keine Reproduzierbarkeit haben. Das ist auch, glaube ich, noch nicht vollständig zu Ende gedacht,
wie das dann später funktionieren kann. Also in der Normungsroadmap, danke, dass du da nochmal den Hinweis gibst, das war ein spannendes Thema. Die ist tatsächlich von der Bundesregierung initiiert worden, vom Digitalgipfel dann auch vorgestellt. Die Normungsroadmap sollte und macht es auch jetzt schon in der zweiten Ausgabe, die Bedarfe aufweisen, wo Normierung notwendig und
gefordert ist. Da haben viele, also das sind mehrere hundert Autoren, tatsächlich mitgeschrieben. Also es ist ein echtes Megawerk, kann man sagen, aber richtig gepackt voll mit guten Informationen, die zum einen kritisch hinterher fragen, wie ist der Finanzbereich, wie ist der Medizinbereich zur Norm, wie ist Verkehrsbereiche sind zur Norm, Finanzbedarf habe ich gerade schon gesagt,
genau. Also es gibt da einmal Domänen, die da betrachtet werden, aber auch so ganz grundlegende Dinge in dieser Roadmap, wie zum Beispiel der EU-AI-Act Auswirkungen haben wird, was aus dem heraus an Normung stattfinden sollte. Und gerade im Moment laufen gerade die ersten Workshops dazu, wie das konkret wird, in welchen Standardization Bodies, also ob es auf europäischer oder auch
gleich auf internationaler Norm einzukippen ist, diese Bedarfe. Denk zum Beispiel an diese großen Sprachmodelle, diese Large Language Models, wie JET-GPT1 ist, hat sich auch eine Gruppe geformt, die an der Stelle gerade die Bedarfe strukturiert und versucht hier die Normung anzustoßen. Naja, da wird noch einiges, einige Trainingsdaten in der KI verschwinden, bevor es da wahrscheinlich mehr gibt. Jetzt habt ihr euch ja schon lange beschäftigt mit dem Thema und ihr habt das ja
vorher schon gesagt, es gibt da jetzt auch ein Buch dazu. Also jetzt gerade hier noch nur das Deckblatt, aber es ist schon bis die Folge quasi ausgestrahlt, werden wir das Buch auch in den Händen halten können. Könnt ihr da mal einen kurzen Abriss geben? Der Entwickler würde sagen, wir sind fast fertig. Ohne jetzt die Entwickler diskriminieren zu müssen. Nein, es ist alles gut. Fast fertig, genau. Das Cover ist schon da. Basiswissen KI testen im D-Punkt Verlag,
erscheint das. Könnt ihr mal einen kurzen Abriss geben, was ihr da so, wie der Faden da so durchgeht durch das Buch, was ihr damit abdeckt? Ja, wir können auch gleich nochmal die einzelnen Kapitel dann ein bisschen beleuchten. Ein paar Sachen haben wir jetzt auch schon besprochen. Ein Kapitel ist nämlich zum Beispiel Testmethoden. Welche Testmethoden, die wir schon kennen oder
welche neuen gibt es vielleicht auch. Im Prinzip basiert das Buch auf dem CTI Lehrplan vom ICT-Gubi oder auch vom DTB, vom Testing Board und wir haben uns da auch im Wesentlichen an die Kapitel gehalten.
Was wir aber zusätzlich gemacht haben, ich glaube, das ist auch ein echter Mehrwert, wir haben unsere Erfahrung, die wir jetzt schon gesammelt haben, damals in dem ersten Forschungsprojekt und jetzt auch in den echten Projekten, mit einfließen lassen und haben auch, ja, hands-on, also wir haben mehr Übungen als der Lehrplan vorsieht, in dem Buch mit reingepackt. Natürlich auch eine Lösung. Da gibt es, da wird auch auf Gittern etwas da sein, wo sich dann die Leser die Lösung sozusagen runterladen
können bzw. dann auch selber mitmachen können und dann mal ein Jupyter Notebook belernen können und damit rumspielen können und ich glaube, das ist ein echter Mehrwert. Also das soll zum einen ein Nachschlagewerk sein, dass man mal nachgucken kann, wie war das eigentlich, wie macht man das und zum einen aber auch, ja, dass man mitarbeitet und das, was man da gerade gelesen hat, auch wirklich mal
anwendet. Also zum Beispiel auch mal Pairwise Testing oder so, benutzt eine Excel-Tabelle von mir aus, egal, aber ist dann halt dabei und dass man es auch mal ausprobiert. Ja, Pairwise hat ja in den alten Lehrplänen so ein bisschen, also es ist benannt, man erklärt das kurz in dem Kurs, zeigt das Konzept aber so wirklich praktisch. Ja, ich denke, das ist auch einer der großen Mehrwerte, einerseits vom Lehrplan selbst, weil das in den Schulungen auch tatsächlich gefordert ist, Hands-On zu machen.
Also in solchen Trainings müssen dann die Teilnehmer tatsächlich hier vor ihrem Laptop sitzen und ein Netzwerk trainieren, aber das wird eben auch im Buch so gemacht und da gehen wir halt durch diese ganzen Testmethoden, die gerade für KI vom Lehrplan benannt werden und geben da Beispiele und auch zum manchmal selber Nachvollziehen. Natürlich sind da auch Sachen drin, auch ganz am Anfang, was im Lehrplan ja auch drin ist. Was ist überhaupt ein neuronales Netz oder was gibt es
für unterschiedliche KIs und so weiter. Also es wird schon von Grund auf... Also ich muss kein KI-Experte sein. Genau, darauf wollte ich hinaus. CTFL wird, glaube ich, mehr oder weniger vorausgesetzt, da gehen wir dann auch nicht mehr so auf die Berüftigkeiten ein. Da sagen wir schon, okay, wenn ihr den CTFL kennt, dann ist es okay. Man wird das Buch auch lesen können,
wenn man den CTFL jetzt noch nicht hat, dann wird man auch einiges verstehen. Aber was KI angeht, fangen wir ja nicht bei Null, aber wir fangen relativ weit vorne an und es geht dann Höhe ab Höhe immer weiter. Super, weil ich glaube, es ist sehr wichtig, wie wir am Anfang gesagt haben, man muss als Tester jetzt beginnen, neu zu denken. Ich habe nicht mehr nur meine klassischen Qualitätsmerkmale, ich habe jetzt auch mehr, ich habe neue, ich habe eher statistischen Zugang,
ich habe eine gewisse Ungenauigkeit, eine Wahrscheinlichkeit, mit der ich arbeite. Das bedeutet, glaube ich, für viele Tester auch ein neues Denken und da hilft, denke ich, sicher so ein Werk auch, dieses Mindset weiter zu schärfen und sich da mit den Themen auseinander zu setzen. Und einmal natürlich mit der Kollegin Verena auch nochmal, weil die kamen nämlich aus
dem KI-Experten mehr oder weniger zum Test. Wir kamen aus dem Test und das war natürlich dann auch super, sich mit ihr auszutauschen und darüber zu diskutieren, wie machen wir das denn jetzt eigentlich. Sehr schön. Also wir können sagen, wenn die Folge ausgestaltet wird, also jetzt, gibt es das Buch schon. Und weil das auch so wichtig ist, haben wir auch da wieder
eine Verlosung. Und zwar werden fünf Exemplare hier verlost. Den Link gibt es in den Show Notes und da haben wir schon den ersten Einblick zu haben, wie es mit KI-Testen funktioniert und wie man da weiterkommt. Und ja, mir bleibt nur zu sagen, vielen herzlichen Dank für euren vielen Input heute schon mal. Also ich glaube, wir könnten locker noch eine zweite Folge machen, machen wir vielleicht auch, aber ich glaube, das Thema ist auch gerade brandheiß und da
können wir noch weitergehen. Also ich danke euch sehr für Rede und Antwort, wünsche euch noch ganz viel Spaß am QS-Tag und bis bald. Danke dir, Ritvi. Danke, Ritvi. Danke, tschau. Tschüss. Tschüss. [Musik]