Interview mit Michael Mlynarski 

 29. April 2022

Michael ist ein Informatiker, der zufällig (oder auch nicht) QualityMinds gegründet hat. Er hat rund 20 Jahre Erfahrung in den Bereichen Software Engineering, Testing/QA sowie Agile Leadership. Sein sogenanntes “Herzblut” ist das Entwickeln von hochwertigen Produkten, Technologie-Trends und das Befähigen von Menschen zu Wachstum. In den letzten 10 Jahren hat er QualityMinds und mehrere Startups in Deutschland und Polen gegründet. Privat liebt er die Berge und den Rennsport.

Welchen Herausforderungen muss sich Software Testing in der Zukunft stellen?

Wir als Tester-Community werden sicherlich nicht ohne Arbeit dastehen müssen. Allerdings wird die Art der Arbeit die wir als Tester:innen kennen sich ändern. Die größte Herausforderung ist das ganzheitliche Denken. Es reicht nicht nur über die analytische Qualitätssicherung und insbesondere Testen nachzudenken. Vielmehr kommt es darauf an Qualitätssicherung gesamthaft anzugehen. Das Wissen über und Integration in alle anderen Disziplinen im Software Engineering wie Requirements Engineering, Software Architektur, Entwicklung bis hin zur DevOps Engineering mindestens als T-Shape Profil der Tester:innen wird ein Muss sein. Die bezieht sich sowohl auf das methodische Wissen aber auch die dazugehörigen Tools, welche in den letzten Jahren extrem über die Open Source Bewegung heterogen geworden sind. Hoffentlich nicht mehr erwähnenswert ist, dass die meisten Projekte und Produktentwicklungen nach agilen Vorgehensweisen durchgeführt werden mit allen Implikationen auf das Thema Test.

Als ob das nicht bereits eine große Herausforderung wäre, wird sich in der Zukunft die Art der zu testenden Systeme ändern. Neben den Web, Mobile, Cloud oder IoT-Systemen kommen immer mehr datenintensive Anwendungen (bspw. mit Machine Learning Anteilen) ins Spiel. Das Testen dieser ändert in vielerlei Hinsicht die Paradigmen auf denen basierend wir heutzutage testen. Daraus resultiert die Herausforderung sowohl für die Industrie aber auch Forschung nach solchen Ansätzen zu suchen bzw. zu erarbeiten.

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

Um die Herausforderung der ganzheitlichen Betrachtung von Qualitätssicherung (nicht nur Test) anzugehen bedarf es in erster Linie der Bereitschaft bzw. Mindset es als Möglichkeit statt Bedrohung zu sehen. Als Tester:innen müssen wir ein Growth Mindset erlangen und sehr viel lernen. Sowohl über Software Engineering (insb. in der agilen Welt) im Allgemeinen, aber auch im Detail über Methoden und Tools. Um näher am Software Engineering zu sein bieten sich Brücken über “technische Themen” wie Testautomatisierung (kein Record&Play oder Lösungen fernab vom Code), Last&Performance Tests, einfache Integration in CI/CD-Pipelines oder sogar Themen wie Testdatengenerierung. All diese Bereiche sind in der modernen Softwareentwicklung nicht wegzudenken und als Tester:innen können wir damit hohen Mehrwert stiften und lernen. Lehrpläne (wie bspw. ISTQB) können dabei zwar helfen, aber individualisiertes Lernen durch die weltweit sehr aktiven Test-Community ist viel wichtiger. Es gibt Unmengen an Quellen und Inhalten im Netz für fast jedes Testing-Thema.

Die Herausforderung der neuen Typen von System under Test kann durch Erarbeitung neuer Ansätze angegangen werden. Genauso wie wir als Community über Jahre das Feld von Mobile oder IoT Testing “beackert” haben, müssen wir uns beispielsweise mit dem Test von datenintensiven Systemen (einfache Machine Learning Ansätze wie Recommender bis hin zu tiefen neuronalen Netzen) auseinandersetzen. In der Forschung gibt es aktive Bestrebungen im Bereich Safe AI die nach Methoden und Tools für die Absicherung von KI-Systemen forschen. In der Praxis fehlen uns diese aber um effektiv Systeme die durch Trainingsprozesse mit Unmengen von Daten erstellt wurden zu testen. Denkbar ist auch, dass wir KI in Testing-Tools anwenden können um klassische oder KI-basierte Systeme zu testen. Erste Ansätze gibt es zwar jetzt auf dem Markt, aber nach tiefer Betrachtung stecken wir hier noch “in den Kinderschuhen”.

Wie sieht Future Testing aus? Wie werden wir testen? 

Eins steht meiner Meinung nach fest: Wir werden und möchten in der Zukunft nicht Herausforderungen mit sehr sehr großen Testing-Teams mit vielen manuellen Aktivitäten lösen. Der Automatisierungsgrad im Testprozess wird steigern müssen. Das ähnlich zu der allgemeinen Entwicklung in der Digitalisierung. Was in der Zukunft hoffentlich mehr stattfindet ist, dass wir aus den Daten die uns als Tester:innen vorlegen (Testpläne, Testfälle, Testdaten, Testlogs, etc. etc.) automatisiert Ableitungen oder mindestens Empfehlungen ableiten können. Damit können wir die Abdeckung der Risiken auf die wir fokussiert sind besser steuern und schneller Entscheidungen treffen. Ich glaube dass KI-basierte Ansätze im Test die aus Daten lernen uns unglaublich helfen können. Damit haben wir hoffentlich zukünftig mehr Zeit um die richtig spannenden Sachen im Test (bspw. exploratives Testen) voranzutreiben anstatt mit nicht funktionierender Testautomatisierung oder sogar manuellen Regressionstests zu kämpfen.

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

Lernen, lernen und nochmals lernen! Gerade als Tester:innen müssen wir uns ständig weiterbilden, auch mal in die Techniken und Tools tiefer eintauchen sowie die Trends beobachten. Die Nostalgie über vergangene Jahrzehnte und klassische Bilder vom Testmanagement werden uns nicht helfen. Stattdessen eine gesunde Neugier, Mut und Offenheit kann hier helfen. Neben den allgemein bekannten Zertifizierungen und Ausbildungen, kann ich wärmstens die aktiven Test Communities, Meetups, Online Learning Plattformen oder sogar YouTube sehr empfehlen. Auf jeder guten Testing Konferenz gibt es immer Talks oder Workshops die aktuelle Trends vorstellen. Durch Open Source gibt es zahlreiche Frameworks und Methoden für fast alle Themen im Bereich Test die kostenlos angewendet werden können.