Rowing Team

Fragen an Martin Nathaniel, Software-Tester bei COPS

Name

Martin Nathaniel

Position bei COPS

Software-Tester

Bei COPS seit

2019

Alter

So alt wie die Antwort für das Universum und den ganzen Rest

Hobbys

Mathematik, KI, Sport und Musik

Mit corima verbindet/n mich…

… unter anderem ein Schwur, den ich vor dem internationalen Testerboard abgelegt habe:
 https://www.istqb.org/about-us/what-we-do/#:~:text=The%20ISTQB%C2%AE%20defines%20the,consistent%20with%20the%20public%20interest.

in 10 Jahren…… corima 20.0   =)

corimamagazin: Hallo Martin. Heute wollen wir mit Dir einen weiteren Ausflug in die Welt der Software-Entwicklung machen. Wie bei vielen anderen Produkten auch, wird Software getestet, bevor sie an Kunden ausgeliefert wird. So ziemlich jeder kann sich vorstellen, wie man ein Auto testet. Aber Autos werden einmal ausgiebig getestet und dann produziert. Wenn sie vom Band rollen, gibt es eine Funktionsprüfung und während des Gebrauchs gibt es regelmäßige Wartungen. Aber wie läuft das bei einer Software?

Schon bei unserem User-Treff 2022 hast Du einen sehr spannenden Vortrag gehalten, in dem es um die Entwicklung eines Test-Automatisierungs-Frameworks ging. Wie steht es damit und wie muss man sich den „Elch-Test“(Anmerkung der Red.: Legendärer Auto-Fahrdynamik-Test, der 1997 die erste A-Klasse von Mercedes Benz während der Fahrt hat umstürzen lassen: https://de.wikipedia.org/wiki/Elchtest) für Software vorstellen?

M.Nathaniel: Den Vergleich mit der Autoindustrie hast Du gut gewählt. Gerade in diesem Sektor gibt es einige gute Beispiele dafür, wie die Einführung agiler Entwicklungsmethoden und der Aufbau einer Testinfrastruktur zu einem starken Wettbewerbsvorteil am Markt geführt haben. In den letzten Jahren haben sich alle Hersteller mit Ereignissen auf globaler Ebene konfrontiert gesehen, die es notwendig machten, die gesamte Fertigung inklusive der Zulieferkette innerhalb kürzester Zeit und während laufender Produktion umzustellen. Schnelle Reaktionszeiten sind da nur möglich, wenn man ein direkt in die Fertigungsprozesse eingebettetes Sensorium hat, das Änderungen innerhalb von wenigen Stunden für die Produktion validiert. So ein Sensorium ist nichts anderes als eine Test-Suite, wie man sie aus der Software-Entwicklung kennt, und die Techniken zum Aufbau der Testinfrastruktur sind durchaus vergleichbar. Interessanterweise ist genau dieser Umstand eine goldene Gelegenheit für Start-ups und Newcomer, da die Implementierung dieser Test-Suite gleichzeitig mit dem Aufbau der einzelnen Produktionsschritte stattfinden kann und die Testinfrastruktur so auf natürliche Weise mit der Produktionskapazität mitwächst. Für die etablierten Hersteller, die bereits eine riesige Maschinerie mit Tausenden von Produktionsschritten am Laufen haben, ist das Nachpflegen einer solchen Infrastruktur dann schon eine Herausforderung. Wie essenziell der Umstieg auf agile Methoden für den Unternehmenserfolg ist, merkt man in der Autoindustrie besonders deutlich, da sich durch die hohe Kapitalbindung in dieser Sparte ein verzögertes Reagieren auf Marktgegebenheiten sofort in der Bilanz niederschlägt.

„Das bedeutet, dass wir in der Entwicklungsabteilung vor einem echten Quantensprung stehen und dass wir für die kommenden Jahre mittlerweile sehr gut aufgestellt sind.“

Um den Schwenk zurück zu COPS zu machen: Wir haben die Notwendigkeit zum Umstieg auf agile Methoden schon vor Jahren erkannt und haben unsere gesamten Prozesse innerhalb der Entwicklungsabteilung dementsprechend umgestellt. Das automatisierte Testen ist dabei zwar nur ein Puzzlestein von vielen, aber doch ein ganz wesentlicher. Hier waren wir bis vor kurzem tatsächlich in einer ähnlichen Situation wie die eingangs erwähnten alteingesessenen Autohersteller. Wir haben auf einem wahren Schatz an bereits umgesetzten Applikationen gesessen, die aber nur schwer modifiziert werden konnten, da ein automatisiertes Testframework erst nachgepflegt werden musste. Mit dem Aufbau der Testinfrastruktur sind wir im Bereich der Webapplikationen gerade fertig geworden. Das bedeutet, dass wir in der Entwicklungsabteilung vor einem echten Quantensprung stehen und dass wir für die kommenden Jahre mittlerweile sehr gut aufgestellt sind.

corimamagazin: Wie kann man sich diesen Quantensprung genauer vorstellen?

M. Nathaniel: Die moderne Entwicklung setzt vor allem auf Geschwindigkeit. Heutzutage ist es sehr einfach, schnell einen Prototyp zu bauen oder sogar von künstlicher Intelligenz bauen zu lassen. Die Herausforderung ist, eine neue Funktionalität verlässlich in ein bereits bestehendes System zu integrieren und so dessen Fähigkeiten bei steigendem Komplexitätsgrad der Anforderungen auszubauen. Der Quantensprung, vor dem wir stehen, ist, dass wir die Geschwindigkeit, mit der die Integration in eines unserer Systeme passiert, an die Geschwindigkeit anpassen können, mit der prototypisiert werden kann. Damit erhöhen wir nicht nur unsere eigene Effizienz, sondern sind auch in der Lage, zukünftig von allgemeinen Technologiesprüngen im Softwarebereich zu profitieren, da wir auch externe Tools viel schneller integrieren können, als das bisher der Fall war.

„Das, was automatisiert wird, ist die Ausführung der Tests, nicht das Erstellen der Tests selbst.“

corimamagazin: Als Laie denkt man sich jetzt: Wenn Software Software testet, wer testet und kontrolliert die Testsoftware?

M. Nathaniel: Das ist ein guter Punkt. Wenn das Schlagwort „automatisiert“ auftaucht, entsteht bei vielen das Bild im Kopf, dass alles wie magisch von allein passiert, ohne dass noch ein Mensch aus Fleisch und Blut dahintersteht. Genau das Gegenteil ist aber der Fall. Das, was automatisiert wird, ist die Ausführung der Tests, nicht das Erstellen der Tests selbst. Das Schreiben der Testskripte und das Testdesign muss sehr wohl noch von Menschenhand gemacht werden. Sich zu überlegen, wie man sicherstellen kann, dass eine Software genau das macht, was man von ihr erwartet und dass sie korrekt mit anderen Programmen interagiert, ist eine hohe Kunst und Wissenschaft zugleich, und kann noch nicht von einer künstlichen Intelligenz übernommen werden.

„Moderne Softwareentwicklung ist ein Teamsport und gute Kommunikation zwischen den Teams ist der Schlüssel zum Erfolg.“

corimamagazin: Was bedeutet das für die Kenntnisse und Fähigkeiten der Tester? Muss ein Tester also heute auch programmieren können? Was für Skills, hart oder soft, braucht es zudem Deiner Meinung nach?

M. Nathaniel: Testteams sind heutzutage generell sehr breit aufgestellt und der moderne Tester muss sowohl technisch versiert als auch in der jeweiligen Domäne zu Hause sein. Innerhalb des Teams gibt es dann bestimmte Rollen, auf die sich der einzelne Tester spezialisieren kann. Bei COPS haben wir eine gute Mischung – die eine Hälfte baut das Testframework auf, die andere gestaltet Designspezifikationen für neue Applikationen mit. Wir haben auch einen Tester, der hauptsächlich auf UI/UX-Design spezialisiert ist. Am wesentlichsten ist aber vor allem die soziale Komponente. Moderne Softwareentwicklung ist ein Teamsport und gute Kommunikation zwischen den Teams ist der Schlüssel zum Erfolg.

„Agil zu sein heißt einfach nur schnell auf Veränderungen reagieren zu können…“

corimamagazin: Wir kommen immer wieder auf das Thema „Umstieg auf agile Methoden“ zu sprechen. Was bedeutet das im Allgemeinen und speziell für das Testing?

M. Nathaniel: Agil zu sein heißt einfach nur schnell auf Veränderungen reagieren zu können – es ist ein einfaches Konzept, das aber in der Praxis viel Grundlagenarbeit erfordert. Nehmen wir zum Beispiel an, ein Entwickler führt eine Codeänderung an einem bereits bestehenden Programm vor.

Der Code selbst ist schnell geschrieben, aber was ist notwendig, um sicherzustellen, dass er dann auch in der Produktion funktioniert? Der Code muss auf einer Testumgebung installiert werden, die Testumgebung selbst muss davor aufgesetzt und konfiguriert werden – und das Programm muss in allen nur erdenklichen Kombinationen mit anderen Programmen getestet werden. Es ist enorm wichtig, dass der Entwickler rasch Rückmeldung bekommt, ob er seinen Code noch einmal anpassen muss. Wenn man es schafft, alle diese Prozesse innerhalb einer Stunde zu durchlaufen, ist man agil. Wenn der Entwickler stattdessen wochen- oder gar monatelang darauf warten muss, um zu erfahren, wie sich seine Codeänderung auf die gesamte Codebasis auswirkt, ist man in der modernen Entwicklung am Markt chancenlos.

„Das kommenden Jahr wird … sehr spannend, denke ich.“

corimamagazin: Darf man da weitere Quantensprünge erwarten, die durch automatisiertes Testing entstehen werden?

M. Nathaniel: Ja, definitiv, und nicht nur das. Auch in allen anderen Teams unserer Entwicklungsabteilung gibt es Projekte, die unsere internen Durchlaufzeiten drastisch reduzieren werden. Das kommende Jahr wird in dieser Hinsicht sehr spannend, denke ich.

corimamagazin: Bei den Hobbys hast Du unter anderem Mathematik, KI und Musik angegeben. Dann ist Dein Instrument sicher ein Synthesizer sein, oder?

M. Nathaniel: Ich mag die Idee eines Instruments, das alles kann, zwar sehr gern, aber meine gelernten Instrumente sind Klavier und Gitarre. Generell höre ich gerne „echte“ Saiteninstrumente wie Geige oder Bass. Es geht einfach nichts über den natürlichen Klang eines Orchesters bei einem Livekonzert.

corimamagazin: Es ist beruhigend, dass trotz allen digitalen Lebens und Arbeitens noch Leidenschaft für analoge Kunst bei Dir vorhanden ist. Danke Martin für diese äußerst spannenden Insights – und wir sind schon gespannt, wie es in der Testautomatisierung weitergeht. Ich bin mir sicher, wir hören bald wieder von Dir, wahrscheinlich schon im Juni beim diesjährigen COPS UserTreff.

corimamagazin

Sie möchten regelmäßig Updates zu Trends, Entwicklungen der Finanzbranche und unsere TMS-Themen? Dann abonnieren Sie gleich unser corimamagazin, das Sie via E-Mail über neue Beiträge und spannenden Neuerungen aus unserem Haus informiert.