Blog

Testdatenmanagement – die unterschätzte Herausforderung

12 Jan, 2016
Xebia Background Header Wave

Beim Planen der Testprozesse und der damit verbundenen Testaktivitäten wird oftmals die Bedeutung und Wichtigkeit von Testdaten sträflich vernachlässigt. Fehlende oder in nicht ausreichender Menge oder Qualität zur Verfügung stehende Testdaten führen zu Verzögerungen oder im schlimmsten Fall zum Abbruch des Projektes. All zu oft werden sogar produktive Daten kopiert, wobei der Datenschutz aussen vorgelassen wird. Um diesen Herausforderungen gerecht zu werden, hat sich in den letzten Jahren das „Testdatenmanagement“ als eigenständige Disziplin – vor allem in komplexen und kritischen Projekten – etabliert.

Testdatenmanagement als essentieller Bestandteil des Testens

Die Aufgabenplanung sollte frühzeitig, daher zu Projektbeginn, in Angriff genommen werden. Als erstes müssen die einzelnen Schritte zur Testdatenerstellung innerhalb des erstellten Testprozesses integriert werden. Als vorteilhaft hat sich dabei die Zuordnung dieser Schritte zu den einzelnen Testphasen erwiesen.

Bereits die Planungsphase der Testaktivitäten beginnt mit der Erstellung eines Testdatenkonzeptes. Dieses Konzept erläutert insbesondere die folgenden Aspekte:

  • Herkunft der Testdaten
  • Definition von Struktur, Umfang, Qualität und Lebensdauer der Daten
  • Abklärung der Verfremdung oder der künstlichen Erzeugung der Daten
  • Definition der Verantwortlichkeiten im Testdatenprozess
  • Erläuterungen zum Einsatz entsprechender Werkzeuge
  • Berücksichtigung von Standards, Normen, Compliance- sowie Datenschutzrichtlinien
  • Auswirkungen auf nachgelagerte Prozesse bei verfremdeten oder synthetisch erzeugten Daten
  • Löschen beziehungsweise Rückgabe und Archivierung der Testdaten

Auch Testdaten haben eine Herkunft!

Schon die Festlegung der Quelle der Testdaten hat massgeblichen Einfluss auf die weiteren Testaktivitäten. Will man unkritische Daten aus dem Produktionssystem, Live-Daten mit Personenbezug anonymisiert oder pseudonymisiert beziehungsweise gänzlich synthetisch erzeugte Testdaten verwenden? Die folgenden  Aspekte sind daher vor der Auswahl der Testdaten unbedingt zu beachten.

So muss zunächst an Hand der Kritikalität der Echtdaten entschiedenen werden, welche Art von Verfremdung zur Anwendung kommt. Grundsätzlich gibt es hier die im Folgenden beschriebenen Vorgehensweisen.

Die Welt der Verfremdung

Die einfachste Art der Verfremdung ist die Anonymisierung eines Namens wie zum Beispiel Urs Müller zu Urs M. Ein weiteres Beispiel ist das unkenntlich machen einer Kreditkartennummer. Hier werden in der Regel nach der Kennung des Kreditkarteninstituts alle Ziffern bis auf  die letzten drei oder vier durch den Buchstaben „X“ oder ähnliche Platzhalter ersetzt. So handelt es sich bei der anonymisierten Kartennummer "VIXXXXXXXXXXXX9876" um eine Visa Kreditkarte.

Anonymisierung  bezieht sich nicht ausschliesslich auf Textdaten, sondern ebenso auf Multimediadaten wie Fotos und Filme. So können Bilder mit einer Art Milchglas-Effekt verschleiert werden. Auch der bekannte schwarze Balken über den Augen wird häufig angewendet. Bei Videos werden in der Regel zu schützende Bereiche durch „Verpixelung“ unkenntlich gemacht.

Eine Erhöhung der Anonymisierungsstärke wird bei hochkritischen Datensätzen durch das Löschen von Datenbankschlüsseln (also Datenbeziehungen) erreicht. So ist eine Rückverfolgung von verfremdeten Personendaten fast unmöglich. Dabei muss aber beachtet werden, dass es zu Inkonsistenzen und damit zu fehlerhaften Testergebnissen kommen kann.

Pseudonym: Felix Muster

Eine zweite Möglichkeit, um unkritische Testdaten zu erhalten, ist die sogenannte Pseudonymisierung. In diesem Fall wird der eigentliche Personenname durch ein Pseudonym ersetzt. Eines der bekanntesten Beispiele ist Felix Muster. Donald Duck oder Mickey Mouse taugen aber ebenso als Pseudonyme wie Landes- oder Gewässernamen.

Bei der Pseudonymisierung müssen zwingend nicht nur der Name, sondern auch die mit diesem Namen verbundene Daten wie Adresse oder EC-/Kreditkartenangaben geändert werden. Dies schliesst eine Rückverfolgbarkeit sicher aus. Eine Kombination aus Pseudonymisierung und Anonymisierung ist ebenso denkbar.

Mit synthetischen Daten geht’s auch!

Während bei den beiden Verfremdungsmethoden vorhandene Live-Daten maskiert werden (Testdatenmaskierung), können Testdaten auch von Grund auf neu erstellt werden (Testdatengenerierung). Es handelt sich um synthetisch generierte (künstliche) Testdaten. Die künstlich erzeugten Testdaten können zum Beispiel in der Form „Vorname1, Nachname1, Strasse1“ mit aufsteigendem Index vorliegen. Der Vorteil dieser Methode der Testdatenerstellung ist, dass man sich keine Gedanken mehr über kritische oder sensible Dateninhalte machen muss.

Werkzeugunterstützung im Testdatenprozess

Die Unterscheidung der Testdaten-Arten spiegelt sich auch bei den unterschiedlichen Werkzeugen für die Testdatenerstellung wieder:

  • Testdatengeneratoren: Erzeugung und Bereitstellung von synthetischen Testdaten
  • Maskierungswerkzeuge: Verfremdung, daher Anonymisierung oder Pseudonymisierung vorhandener Daten

In der Regel bieten diese Werkzeuge umfangreiche Templates zur Definition der zu erstellenden oder zu verändernden Testdaten. Diese lassen sich an den Verwendungszweck und die Anforderungen anpassen und erzeugen effektiv und effizient Subsets an Daten in der benötigten Qualität und Menge. Sind die Daten aufgebracht, kann man umgehend neue Testdatensätze bilden. Auch ein künstliches Altern der erstellten Testdaten wird durch Toolunterstützung realisiert, um entsprechende Geschäftsprozesse zu validieren.

Neben Werkzeugen zur Anonymisierung von Echtdaten oder Erstellung von Pseudo- und synthetischen Testdaten, gibt es auch Tools nur für das Testdatenmanagement. Aber auch Werkzeuge, die beide Funktionalität abdecken, sind verfügbar. Eine Übersicht über die gängigsten Testdaten-Tools bietet hier die Webseiten testtoolreview.de und testing-board.com.

Um genügend Zeit und Ressourcen für eine fundierte Evaluierung entsprechender Tools (unter anderem innerhalb eines Pilotprojektes) zu haben, sollte die Entscheidung, ein Testdatenwerkzeug einzusetzen frühzeitig fallen.

Auswirkungen der Verfremdung von Testdaten

Allgemein gilt die Aussage, dass bei einer stärkeren Datenverfremdung die geltenden regulatorischen und rechtlichen Vorgaben am ehesten eingehalten werden. Andererseits muss aber mit einer grösseren Beeinflussung von Verarbeitungsprozessen gerechnet werden. Die verfremdeten oder künstlichen Testdaten können Testresultate unter Umständen verfälschen und auf nachgelagerte Programmabläufe und Prozesse einwirken.

Diesem Umstand kann man durch einer Risikoanalyse oder mit der Durchführung entsprechender Workshops mit Projektmitgliedern und involvierten Stakeholdern begegnen. Ergebnisse sind die Definition und Umfang der Testdaten, die anzuwendende Methode und die Bewertung des Impacts auf die weitere Verarbeitung der so erstellten Testdaten.

Auch bei Testdaten gilt der Datenschutz!

Bei der Verwendung von Testdaten wird oftmals die Einhaltung geltender IT-Complience-Vorgaben ausser Acht gelassen. Hierzu zählen neben den unternehmensinternen und vertraglichen auch gesetzliche Regelungen wie zum Beispiel das ). Darum ist es ratsam, bereits während der Planungs- und Definitionsphase den Compliance- oder Datenschutzbeauftragten des Unternehmens, zur Klärung der rechtlichen Aspekte hinzu zu ziehen. Erfolgt dies erst später innerhalb des Projektverlaufs –,wenn die Testdaten bereits vorliegen – kann eine nachträgliche Anpassung der Daten sehr aufwendig sein. Mitunter führt sie sogar zu Verzögerungen der weiteren Testaktivitäten und des gesamten Projekts und dadurch zu unnötigen Mehrkosten.

Gesetzlichen Bestimmungen sowie anderen Vorgaben kann man durch verschiedene Massnahmen begegnen. Einer der wichtigsten Ansätze ist die Aufklärung und Sensibilisierung aller Projektbeteiligter über die erwähnten Richtlinien und ihre Bedeutung in Bezug auf das vorliegende Projekt.

Verantwortliche Rollen im Testdatenprozess

Alle Aktivitäten in Bezug auf Testdaten laufen also parallel als integraler Bestandteil zum definierten Testprozess. Dies erfordert entsprechend ausgebildeten Mitarbeiter. In Anlehnung an die Rollen eines Testmanagers, Testfalldesigners oder Softwaretesters können auch im Testdatenmanagement verschiedene Rollen mit ihren Aufgabengebieten und Verantwortlichkeiten definiert werden. Ein Beispiel sind die von der AG Testdatenmanagement im ASQF (Arbeitskreis Software-Qualität und -Fortbildung e.V.) definierten Rollen:

  • Testdatenmanager
  • Testdatenmodellierer
  • Testdatenrealisierer

Detaillierte Beschreibungen dieser Rollen können in einem Fachartikel, der im SQ-Magazin (Ausgabe 34, März 2015) erschienen ist, nachgelesen werden.

Check it!

Da Testdaten so wichtig sind, darf der Aufwand bei der Planung, Definition, Erstellung, Verwaltung und Dokumentation nicht unterschätzt werden. Die richtige Menge und Qualität in Verbindung mit einer geeigneten Verfremdung oder synthetischen Erzeugung der Testdaten sind die Grundlage für eine erfolgreiche Testausführungen. Normen, Unternehmensrichtlinien beziehungsweise gesetzliche Vorgaben müssen in jeder Phase des Testdatenprozesses berücksichtigt und durchgehend eingehalten werden. Ebenso ist eine vollständige Dokumentation aller Aktionen mit den Daten erforderlich.

Zur Berücksichtigung all dieser Aspekte rund um das Thema Testdaten empfiehlt es sich anhand einer Checkliste alle Punkte abzuarbeiten – um die oft unterschätzten Herausforderungen im Test(daten)prozess zu meistern.

Checkliste herunterladen

Questions?

Get in touch with us to learn more about the subject and related solutions