Immer schneller werdende Softwareentwicklungszyklen, steigende Kosteneffizienz und sich stetig verbessernde Qualität haben dazu geführt, dass Testdatenmanagement integraler Bestandteil der Softwareentwicklung geworden ist.
Praktiken wie Continous Delivery, Continous Integration und DevOps sind maßgeblich an dessen Entwicklung beteiligt, da sich die Bereitstellung von Testdaten an die schnellen Entwicklungszyklen der Softwareentwicklung anpassen muss. Automatisierung und Flexibilität sind unverzichtbar, damit passende Testdaten zu jedem Zeitpunkt bereitstehen können. Es darf keine wertvolle Zeit darauf verwendet werden, Testfälle vor jedem Test mühsam zusammenzustellen oder immer dieselben starren Testfälle zu verwenden.
Testdatenmanagement wird damit zu einer der wichtigsten Bedingungen für den Erfolg der Software. Ziel des Testdatenmanagements ist die Planung, Organisation und Bereitstellung zielgerichteter Testumgebungen.
XDM – Agile Testdaten für agile Softwareentwicklung
XDM stellt Testdaten flexibel und automatisch in zeitlich definierten Abständen oder bei Bedarf ad-hoc bereit. Dabei automatisiert XDM sämtliche Datenbankoperationen und garantiert regelmäßige Ausführung über einen Scheduler. Die dabei transportierten Daten können inhaltlich verändert oder maskiert (anonymisiert / pseudonymisiert) werden. Ein sicherer Testdatenaustausch wird somit garantiert – Testdaten sind zu jedem Zeitpunkt verfremdet.
XDM ist nicht auf die reine Datenbereitstellung beschränkt, sondern ist ebenso in der Lage, Strukturanpassungen vorzunehmen. Die mit XDM kopierten Daten werden in für Testdaten vorgesehene Umgebungen abgelegt, die dann für einzelne Tests verwendet werden können oder als Basis für weitere Testumgebungen dienen.
Der XDM DataShop stellt das abteilungsübergreifende, zentrale Kommunikationsmittel der Testdatenbereitstellung dar – hier werden Kopieraufträge formuliert, überwacht und koordiniert.
Der DataShop ermöglicht es Bedarfsträgern, wie Entwicklern und Testern, Testdaten flexibel über ein Bestellportal anzufordern. Testdaten werden entweder auf Basis von Testfällen (zusammenhängenden Tabellenzeilen; ideal für kleinere Softwarekomponenten) bereitgestellt oder in Form von Massendaten (komplette Tabellen). Letztere eignen sich optimal für Tests, die größere Datenmengen benötigen, wie Stresstests oder Systemtests – also solche, die Anwendungen holistisch und auf Belastbarkeit testen.
Effizienz durch Spezialisierung
Mit Hilfe von XDM können verschiedene Arbeitsbereiche und Teilgebiete des Testdatenmanagements funktional getrennt werden. Dadurch ist es im Unternehmen möglich, einzelne Aufgaben bestimmten Abteilungen zuzuteilen. Alle Beteiligten nutzen eine bestimmte Komponente von XDM, welches dadurch als zentrales Kommunikationsmittel fungiert und gemäß modernen Praktiken, wie DevOps, die bessere Vernetzung der Bereiche Entwicklung (Development) und Betrieb (Operations) vorantreibt.
Unterschieden wird grundsätzlich zwischen Modellierern und Bestellern. Während Modellierer in Form von Datenbankadministratoren und Anwendungsarchitekten als technisch versierte Benutzer Grundlagen für eine flexible Testdatenbereitstellung – wie Bestellmasken, Kopieraufträge, Verbindungen und Regeln schaffen, müssen Besteller in Form von Testern und Entwicklern lediglich Testdaten anfordern.