1 Min. Lesezeit
(Test)datenradikalkur
“Es ist wieder Budget da. Es muss nur KI draufstehen.” - Richard Seidl Testdatenmanagement erlebt gerade eine Renaissance. Natürlich getrieben...
In der modernen Softwareentwicklung spielen Testdaten eine zentrale Rolle. Sie ermöglichen es, Datenfehler frühzeitig zu identifizieren und die Qualitätssicherung zu optimieren. Durch den Einsatz von KI und Low-Code-Lösungen wird die Testautomatisierung effizienter gestaltet. Eine enge Zusammenarbeit zwischen IT und Fachabteilung ist entscheidend, um Datenprozesse zu harmonisieren und die Qualität zu steigern.
In dieser Episode habe ich mich mit Joshua und Hermann über Qualität, Testautomatisierung und Agilität unterhalten. Hermann erklärte, wie wichtig es ist, Datenfehler frühzeitig zu erkennen und wie man systematisch Soll-Ergebnisse erzeugen kann, um sie mit Ist-Ergebnissen zu vergleichen. Er betonte, dass es oft an passenden Tools fehlt, um diese Tests effizient durchzuführen. Joshua ergänzte, dass ihre Methoden Unternehmen dabei helfen, Daten aus verschiedenen Systemen zu harmonisieren und zu testen. Wir haben auch über die Rolle von Künstlicher Intelligenz im Testprozess gesprochen und wie sie helfen kann, Vorschläge für Tests zu machen und die Zusammenarbeit zwischen IT und Fachabteilungen zu verbessern. Zum Schluss gab es noch Einblicke in die Herausforderungen und Vorteile der Visualisierung von Datenprozessen, um die Qualitätssicherung zu optimieren.
“Das Problem ist, du hast ja Datenfehler. Das taucht oft viel zu spät auf. D.h. Du möchtest eigentlich auch schon während der Entwicklung Daten testen.” Hermann Friebel
Hermann Friebel, seit 2001 Gründer und Geschäftsführer der FINARIS Financial Software Development GmbH, verfügt über eine fast vier Jahrzehnte umfassende Expertise in der Softwareentwicklung und -testung in den Bereichen Wertpapierhandel, Risiko-Controlling.
Seit seinem Einstieg bei FINARIS im Jahr 2015 hat sich Joshua Claßen als Senior Consultant für Backend-Testautomatisierung komplexer Bankanwendungen etabliert. Durch seine Arbeit mit RapidRep, dem Vorläufer von SQACE, sammelte er umfassende Erfahrungen im automatisierten Testen von Daten und in der Datenqualitätssicherung bei verschiedenen Kunden.
Datenfehler werden in vielen Unternehmen oft erst spät erkannt. Zwar hat die IT-Abteilung in der Regel den technischen Zugang zu den Daten, jedoch fehlt häufig das nötige Business-Know-how, um Datenfehler frühzeitig zu identifizieren. Meist entwickelt die Fachabteilung spezifische Testfälle und überprüft diese, was jedoch häufig umständlich und ineffizient ist.
Eine vielversprechende Methode zur Lösung dieses Problems besteht darin, systematisch Soll-Ergebnisse zu erzeugen und diese mit den Ist-Ergebnissen zu vergleichen. Diese Technik deckt jedoch oft nur etwa 70% der relevanten Fälle ab. Um eine vollständige Abdeckung zu gewährleisten, sollten die verbleibenden 30% durch generierte Testdaten ergänzt werden. So kann eine nahezu umfassende Abdeckung aller möglichen Szenarien erreicht werden.
Eine enge Zusammenarbeit zwischen IT und Fachabteilung ist essenziell, um die Erkennung von Datenfehlern zu verbessern. Durch den Einsatz spezieller Tools können Mitarbeitende aus der Fachabteilung aktiv an den Datenprozessen arbeiten und deren Weiterentwicklung unterstützen. Diese Zusammenarbeit fördert nicht nur die Qualität der Testergebnisse, sondern auch das gegenseitige Verständnis zwischen IT und Fachbereichen, was langfristig zu besseren Datenprozessen führt.
Der Einsatz von Low-Code-Komponenten trägt zur Vereinfachung des Testprozesses bei. Mit diesen Tools lassen sich viele Aufgaben schneller und ohne tiefgehende technische Kenntnisse umsetzen. Besonders in großen Unternehmen mit vielen Abteilungen, in denen häufig ähnliche Probleme auftreten, helfen Low-Code-Komponenten dabei, redundante Lösungen zu vermeiden und Prozesse effizienter zu gestalten.
Künstliche Intelligenz (KI) hat das Potenzial, die Testautomatisierung zu revolutionieren. KI kann dazu beitragen, automatisch Vorschläge für Tests zu generieren oder Code zu erstellen, was den Prozess effizienter macht und wertvolle Zeit spart. Dabei bleibt wichtig, realistisch zu bleiben: KI-gestützte Systeme erleichtern die Arbeit und optimieren Abläufe, doch sie übernehmen nicht alle Aufgaben vollständig autonom.
Testdaten sind speziell erstellte oder ausgewählte Daten, die im Softwaretest verwendet werden, um die Funktionalität, Leistungsfähigkeit und Sicherheit eines Systems zu prüfen. Sie simulieren reale Daten und Anwendungsfälle, um sicherzustellen, dass die Software fehlerfrei funktioniert und den Anforderungen entspricht.
Es gibt verschiedene Arten von Testdaten, darunter synthetische Daten (künstlich generierte Daten), Produktionsdaten (echte Nutzerdaten) und maskierte Daten (echte Daten, die anonymisiert wurden). Jede Art hat ihre speziellen Anwendungsfälle, Vor- und Nachteile in Bezug auf Genauigkeit, Sicherheit und Datenschutz.
Testdaten können manuell erstellt, automatisch generiert oder aus Produktionsdaten abgeleitet werden. Automatisierte Tools, wie Testdatenmanagement-Lösungen, ermöglichen es, große Datenmengen schnell und effizient zu erstellen und spezifische Testszenarien abzudecken. Die Wahl der Methode hängt von den Testanforderungen und den verfügbaren Ressourcen ab.
Synthetische Testdaten sind künstlich generierte Daten, die reale Daten simulieren, ohne dabei sensible Informationen zu enthalten. Sie eignen sich besonders gut für Testszenarien, bei denen Datenschutz und Datensicherheit im Vordergrund stehen oder wo echte Produktionsdaten nicht verwendet werden dürfen.
Anonymisierung ist wichtig, um Datenschutzrichtlinien und rechtliche Vorschriften, wie die DSGVO, einzuhalten. Sie schützt die persönlichen Daten der Nutzer und minimiert das Risiko eines Datenschutzverstoßes. Anonymisierte Daten werden häufig in Testszenarien verwendet, die echte Nutzerdaten erfordern, jedoch die Privatsphäre schützen müssen.
Zu den größten Herausforderungen gehören die Erfüllung von Datenschutzbestimmungen, das Bereitstellen der richtigen Datenmengen, die Verwaltung der Datenaktualität sowie das Minimieren der Datenredundanz. Ein effektives Testdatenmanagement stellt sicher, dass die Tests realistische und aktuelle Daten nutzen, ohne unnötigen Speicherplatz zu belegen.
Die Qualität der Testdaten hat direkten Einfluss auf die Aussagekraft der Testergebnisse. Hochwertige Testdaten führen zu verlässlichen Ergebnissen, während fehlerhafte oder unzureichende Testdaten zu falschen Schlussfolgerungen und unentdeckten Fehlern führen können. Daher ist die Datenqualität ein zentraler Aspekt des Testprozesses.
Gängige Tools umfassen beispielsweise TDM-Lösungen wie Informatica Test Data Management, Delphix und CA Test Data Manager. Diese Tools unterstützen bei der Generierung, Maskierung und Verwaltung von Testdaten und helfen dabei, den Testprozess effizient und sicher zu gestalten.
Auf Produktionsdaten sollte verzichtet werden, wenn sensible Informationen enthalten sind und das Risiko eines Datenschutzverstoßes besteht. Dies gilt insbesondere für Testszenarien, die keinen Zugang zu echten Nutzerdaten erfordern oder bei denen alternative, anonymisierte oder synthetische Daten verwendet werden können.
Aktuelle und relevante Testdaten lassen sich durch regelmäßige Aktualisierung und Validierung der Datenbestände sicherstellen. Testdatenmanagement-Tools und -Prozesse unterstützen dabei, die Daten auf dem neuesten Stand zu halten und so die Aussagekraft und Genauigkeit der Testergebnisse zu gewährleisten.
1 Min. Lesezeit
“Es ist wieder Budget da. Es muss nur KI draufstehen.” - Richard Seidl Testdatenmanagement erlebt gerade eine Renaissance. Natürlich getrieben...
Dieser Artikel ist Erfahrungsbericht aus einem Projekt zur Beurteilung der Qualität von Kundendatenbanken. Der darin beschriebene Prozess vereint...
Die Integration von Qualität in den Softwareentwicklungsprozess sollte von Anfang an Priorität haben. Die Erfahrungen aus dem Testing-Bereich können...