Inhaltsverzeichnis | 9 |
1 Einleitung | 19 |
Teil I: Testdaten | 23 |
2 Testdaten – ein Überblick | 25 |
2.1 Begriffe Testdaten, ideale Testmenge, gute Testdaten | 25 |
2.1.1 Testdaten | 26 |
2.1.2 Gute Testdaten | 28 |
2.1.3 Ideale Testmenge | 29 |
2.2 Kategorien von Testdaten | 31 |
2.2.1 Kategorien nach Reimann | 31 |
2.2.2 Kategorien nach Chace | 32 |
2.2.3 Testdatentypen nach Jagers und Kollegen | 33 |
2.2.4 Definition Testdatenkategorien | 34 |
2.3 Testdatenbestandstypen | 35 |
2.4 Unterscheidung in Primär- und Sekundärdaten | 37 |
2.5 Unterscheidung nach Testobjekt in Testdatentypen | 38 |
2.6 Ergebnisse eines Testlaufs: Soll, Ist, Testergebnis | 39 |
2.7 Metadaten für Testdaten | 39 |
2.8 Testdaten, Testfälle, Testentwurfsverfahren und Testabdeckung | 41 |
2.9 Zusammenfassung | 42 |
3 Eigenschaften von und Anforderungen an Testdaten | 45 |
3.1 Eigenschaften von Testdaten | 45 |
3.2 Anforderungen an Testdaten – ein Überblick | 51 |
3.3 Inhaltliche Anforderungen | 52 |
3.4 Technische und organisatorische Anforderungen | 57 |
3.5 Wirtschaftliche und rechtliche Anforderungen | 61 |
3.6 Wunsch und Wirklichkeit | 64 |
3.7 Erheben und Dokumentieren von Anforderungen an Testdaten | 65 |
3.8 Zusammenfassung | 67 |
4 Probleme mit Testdaten und Risiken | 69 |
4.1 Häufige Probleme mit Testdaten | 69 |
4.1.1 Probleme mit Testdaten, die auf den Faktor Mensch zurückzuführen sind | 69 |
4.1.2 Probleme mit Testdaten, die in den Testdaten selbst liegen | 77 |
4.1.3 Probleme aufgrund fehlerhafter, ungeeigneter oder vergessener Testdaten | 81 |
4.1.4 Herausforderungen bei Gewinnung, Herstellung und Wartung von Testdaten | 86 |
4.1.5 Organisatorische Problemstellungen | 93 |
4.2 Risiken bei Testdaten | 99 |
4.2.1 Fehlende und fehlerhafte Testdaten als Produktrisiko – unentdeckte Fehler | 100 |
4.2.2 Fehlende und fehlerhafte Projektrisiko als Projektrisiko – Verzögerungen und spät entdeckte Fehler | 101 |
4.3 Zusammenfassung | 102 |
5 Gewinnen und Archivieren von Testdaten | 105 |
5.1 Wege zum Gewinnen von Testdaten | 105 |
5.1.1 Herkunft der Daten: Echtdaten versus synthetische Daten | 106 |
5.1.2 Vorgehen: Ansätze zum Aufbauen von Testdatenbeständen | 119 |
5.1.3 Vorgehen: Konstruktion von Testdaten | 129 |
5.1.4 Zufallsdaten | 130 |
5.1.5 Selbstbeschreibende Testdaten | 131 |
5.1.6 Migrieren von Testdaten | 133 |
5.2 Quellen für das Gewinnen von Testdaten | 133 |
5.2.1 Ermitteln von Anforderungen an Testdaten oder Testdaten aus Artefakten des Softwareentwicklungsprojekts | 134 |
5.2.2 Welche Art Information aus welcher Quelle kommen kann | 138 |
5.2.3 Quellen für das automatisierte Generieren von Testdaten | 140 |
5.3 Wie bekommt man die Testdaten in das zu testende System? | 142 |
5.3.1 Direktes Eingeben über Systemschnittstellen | 142 |
5.3.2 Kopieren und Editieren | 143 |
5.3.3 Spezialisierte Testdatenmanagementlösung | 143 |
5.3.4 Automatisieren von Testeingaben | 143 |
5.4 Trennen der Testdaten von Testfällen | 144 |
5.5 Trennen und Reservieren von Testdaten | 145 |
5.6 Versionieren von Testdaten | 147 |
5.7 Archivieren von Testdaten | 148 |
5.7.1 Wozu archivieren? | 148 |
5.7.2 Vor dem Archivieren: Bereinigung der Testumgebung | 151 |
5.7.3 Wie archivieren? | 151 |
5.7.4 Was archivieren? | 151 |
5.7.5 Datenschutz für archivierte Testdaten | 152 |
5.8 Zusammenfassung | 152 |
6 Testdaten und Datenschutz | 155 |
6.1 Regelungen zum Datenschutz | 155 |
6.1.1 EU-Datenschutzrichtlinie | 156 |
6.1.2 Europäische Datenschutz-Grundverordnung (DSGVO) | 156 |
6.1.3 Bundesdatenschutzgesetz (BDSG) | 163 |
6.1.4 Datenschutz auf Länderebene, branchen- oder unternehmensbezogene Vorgaben | 165 |
6.1.5 Standards zum Datenschutz in der Cloud | 166 |
6.2 Anonymisieren, Pseudonymisieren, Verfremden, Maskieren | 166 |
6.2.1 Anonymisierung | 166 |
6.2.2 Pseudonymisierung | 170 |
6.3 Testdaten in der Cloud | 172 |
6.3.1 Testumgebungen in der Cloud | 172 |
6.3.2 Datenschutz nach DSGVO | 173 |
6.3.3 Datenschutz nach ISO/IEC 27018 | 174 |
6.4 Zusammenfassung | 176 |
Teil II: Testdatenmanagement | 179 |
7 Testdatenmanagement – ein Überblick | 181 |
7.1 Begriff Testdatenmanagement | 181 |
7.1.1 Testdatenmanagement-Begriff nach ISTQB® – datenorientiert | 182 |
7.1.2 Testdatenmanagement-Begriff nach Gawlik – Mischform, Erzeugung von Testdaten im Fokus | 183 |
7.1.3 Testdatenmanagement-Begriff nach Kruse – managementorientiert | 184 |
7.1.4 Testdatenmanagement-Begriff nach Haller – managementorientiert, Werkzeuge | 184 |
7.1.5 Testdatenmanagement-Begriff nach Haber – prozessorientiert | 185 |
7.1.6 Testdatenmanagement-Begriff nach German Testing Board – Mischform | 186 |
7.1.7 Der Begriff Testdatenmanagement | 186 |
7.2 Wozu Testdatenmanagement? | 189 |
7.3 Ziele des Testdatenmanagements | 191 |
7.4 Inhalte des Testdatenmanagements | 193 |
7.4.1 Testdaten | 193 |
7.4.2 Prozesse, Aktivitäten, Rollen, Artefakte, Standards | 194 |
7.4.3 Organisationsstrukturen | 195 |
7.4.4 Werkzeugunterstützung | 195 |
7.4.5 Regularien | 195 |
7.5 Wie ist das Testdatenmanagement in den Testprozess eingebunden? | 196 |
7.5.1 Testplanung und -steuerung ® Testdaten als Testmittel, Werkzeuge | 197 |
7.5.2 Analyse und Design ® Testdatenanforderungsermittlung, Testdatendesign | 197 |
7.5.3 Testumgebung, Deployment ® Testdaten: Umgebungsdaten, Bestandsdaten | 198 |
7.5.4 Realisierung und Durchführung ® Testdatenerstellung (Bestandsdaten, Eingabedaten u. a.) | 198 |
7.5.5 Testauswertung und -bericht ® Aussage zu Testdaten | 199 |
7.5.6 Abschluss der Testaktivitäten ® Archivierung der Testdaten, Übergabe an die Wartungsmannschaft | 199 |
7.5.7 Testdatenmanagement ist überall | 199 |
7.6 Der richtige Zeitpunkt | 200 |
7.7 Abgrenzung Testdatenmanagement und Datenmanagement | 201 |
7.7.1 Der Begriff Datenmanagement | 202 |
7.7.2 Datenmanagement versus Testdatenmanagement | 202 |
7.7.3 Konzepte und Techniken übertragbar | 203 |
7.8 Abgrenzung Testdatenmanagement und Konfigurationsmanagement | 204 |
7.8.1 Begriffe Konfigurationsmanagement, Konfiguration, Konfigurationsobjekt | 205 |
7.8.2 Testdaten und Testdatenmanagement versus Konfiguration und Konfigurationsmanagement | 207 |
7.8.3 Testdatenmanagement mit Konfigurationsmanagement | 208 |
7.9 Zusammenfassung | 209 |
8 Vorgehensweisen im Testdatenmanagement – Modelle | 211 |
8.1 Prozess nach ASQF-Arbeitsgruppe Testdatenmanagement | 211 |
8.1.1 Inhaltsüberblick (Begriff Testdaten & Testdatenmanagement, Rollen, Werkzeuge, Dokumentation) | 212 |
8.1.2 Eignung/Einschränkung | 212 |
8.1.3 Was bietet die Vorgehensweise? | 213 |
8.1.4 Rollenkonzept | 213 |
8.1.5 Das Vorgehen gemäß diesem Prozess | 213 |
8.1.6 Methoden und Techniken | 216 |
8.1.7 Dokumentation | 217 |
8.1.8 Werkzeuge | 218 |
8.1.9 Prozesse, Schnittstellen zu anderen Prozessen | 218 |
8.1.10 In drei Sätzen | 219 |
8.2 Framework von Samuel T. Redwine Jr. | 219 |
8.2.1 Inhaltsüberblick (Begriff Testdaten & Testdatenmanagement, Rollen, Werkzeuge, Dokumentation) | 219 |
8.2.2 Eignung/Einschränkungen | 220 |
8.2.3 Was bietet die Vorgehensweise | 221 |
8.2.4 Das Vorgehen gemäß dieser Best Practice | 222 |
8.2.5 Methoden und Techniken | 223 |
8.2.6 Dokumentation | 224 |
8.2.7 Werkzeuge | 224 |
8.2.8 Prozesse, Schnittstellen zu anderen Prozessen | 224 |
8.2.9 In drei Sätzen | 225 |
8.3 Test Data Management Framework von Borghers und Demey | 225 |
8.3.1 Ansatz | 225 |
8.3.2 Aufbau des Rahmenwerks | 225 |
8.3.3 In drei Sätzen | 229 |
8.4 Weitere Modelle im Überblick | 229 |
8.4.1 Prozessrahmenwerk Test Data Management nach Nittur und Sengupta | 229 |
8.4.2 Strategie nach Murthy und Channagiri | 229 |
8.5 Zusammenfassung | 230 |
9 Vorgehensweisen im Testdatenmanagement – Best Practices | 233 |
9.1 Best Practice nach Chace | 233 |
9.1.1 Inhaltsüberblick (Begriff Testdaten & Testdatenmanagement, Rollen, Werkzeuge, Dokumentation) | 233 |
9.1.2 Eignung/Einschränkungen | 234 |
9.1.3 Was bietet die Vorgehensweise | 234 |
9.1.4 Das Vorgehen gemäß dieser Best Practice | 235 |
9.1.5 Methoden und Techniken | 245 |
9.1.6 Dokumentation | 245 |
9.1.7 Werkzeuge | 246 |
9.1.8 Prozesse, Schnittstellen zu anderen Prozessen | 246 |
9.1.9 In drei Sätzen | 246 |
9.2 Best Practice nach Haller | 247 |
9.2.1 Inhaltsüberblick (Begriff Testdaten & Testdatenmanagement, Rollen, Werkzeuge, Dokumentation) | 247 |
9.2.2 Eignung/Einschränkungen | 249 |
9.2.3 Was bietet die Vorgehensweise | 249 |
9.2.4 Werkzeuge | 249 |
9.2.5 Rollenkonzept | 250 |
9.2.6 Das Vorgehen gemäß dieser Best Practice | 251 |
9.2.7 Methoden und Techniken | 254 |
9.2.8 Dokumentation | 254 |
9.2.9 Prozesse, Schnittstellen zu anderen Prozessen | 254 |
9.2.10 In drei Sätzen | 254 |
9.3 Weitere Best Practices im Überblick | 255 |
9.3.1 Best Practice nach Schauber und Leimsner | 255 |
9.3.2 Best Practice nach Govindasamy und Murugesan | 256 |
9.3.3 Best Practice nach Madia | 256 |
9.4 Zusammenfassung | 257 |
10 Organisation – Rollen im Testdatenmanagement | 259 |
10.1 Testdatenmanagement-Rollen | 259 |
10.1.1 Der Testarchitekt als oberster Verantwortlicher (nach ISTQB®) | 260 |
10.1.2 Der Testdatenarchitekt (Test Data Architect) | 260 |
10.1.3 Testdatenmanager, Testdatenmodellierer, Testdatenrealisierer | 261 |
10.1.4 Testdatenmanager und Testdatenteam | 266 |
10.1.5 Testdaten-Consultant, Testdaten-Designer, Solution Implementer, Technical Operator | 267 |
10.2 Test-Rollen ergänzt um Testdatenmanagementaktivitäten | 269 |
10.2.1 Ergänzen vorhandener Tester-Rollen um Testdatenmanagementaktivitäten, eine optionale Testdatenmanagement-Rolle | 269 |
10.2.2 Keine Testdatenmanagement-Rollen, stattdessen zu vorhandenen Rollen des Testteams zuordnen | 270 |
10.2.3 Spezialisierung einer vorhandenen Rolle | 270 |
10.3 Personalunion versus Eigenständigkeit | 271 |
10.4 Zentrales oder dezentrales Testdatenmanagement? | 272 |
10.5 Zusammenfassung | 273 |
11 Werkzeuge für Testdaten & Testdatenmanagement: Anforderungen und Kategorien | 275 |
11.1 Was Testdatenmanagement-Werkzeuge leisten sollen: Anforderungen an Testdatenwerkzeuge | 275 |
11.1.1 Anforderungen an Werkzeuge zum Erstellen von Testdaten | 275 |
11.1.2 Anforderungen Testdatenmanagement-Werkzeuge | 276 |
11.1.3 Weitere Anforderungen | 278 |
11.2 Kategorien von Testdatenmanagement- Werkzeugen | 278 |
11.2.1 Analyse- und Data-Mining Werkzeuge | 279 |
11.2.2 Werkzeuge für das Erstellen oder Bearbeiten von Testdaten | 279 |
11.2.3 Werkzeuge für die Testdatengenerierung | 280 |
11.2.4 Drei Klassen von Testdatengeneratoren | 281 |
11.2.5 Unterscheidung der Funktionalitäten verschiedener Werkzeuge | 283 |
11.2.6 Weitere Testdatenmanagement-Werkzeuge | 284 |
11.3 Auswahl eines Testdatenwerkzeugs | 285 |
11.3.1 Weitere Voraussetzungen für die Auswahl eines Werkzeugs | 287 |
11.3.2 Testfälle für die Machbarkeitsstudie | 287 |
11.4 Zusammenfassung | 288 |
12 Metriken für Testdaten & Testdatenmanagement | 289 |
12.1 Metriken im Softwaretest | 289 |
12.1.1 Arten von Metriken | 289 |
12.1.2 Aussagen über Testdaten möglich? | 290 |
12.2 Kategorien von Metriken für Testdaten | 291 |
12.2.1 Mengenbezogene Metriken | 291 |
12.2.2 Qualitätsbezogene Metriken | 291 |
12.3 Konkrete Metriken für Testdaten | 292 |
12.3.1 Datenüberdeckungsmaße für Testdaten im Systemtest | 292 |
12.3.2 Metriken zum Messen der Datenqualität von Testdaten | 294 |
12.3.3 Metriken für das Testdatenmanagement | 297 |
12.4 Zusammenfassung | 299 |
13 Testdaten & Testdatenmanagement im Kontext | 301 |
13.1 Testdaten und Fehlerkategorien als Hilfe zur Priorisierung der Testdatenbereitstellung | 301 |
13.2 Testdaten im automatisierten Test | 302 |
13.3 Testdaten beim Testen von Data-Warehouse- und Business-Intelligence-Systemen | 303 |
13.3.1 Testumgebung | 304 |
13.3.2 Gewinnen von Testdaten für den Test von Data-Warehouse- und Business-Intelligence-Systemen | 305 |
13.3.3 Maßnahmen zum Schutz der echten Daten in den Testdaten | 306 |
13.3.4 Vor- und Nachteile von Echtdaten als Testdaten | 307 |
13.3.5 Weitere Quellen zum Ableiten von Testdaten | 308 |
13.3.6 Besondere Gruppen von Daten | 311 |
13.3.7 Überblick: Wie testet man Data-Warehouse- und Business- Intelligence-Systeme und was für Daten(bestände) benötigt man dafür? | 311 |
13.3.8 Begriffe in Data-Warehouse- und Business-Intelligence- Systemen | 318 |
13.4 Testdaten im Test von Embedded Systems | 321 |
13.4.1 Besonderheiten beim Testen eingebetteter Systeme | 321 |
13.4.2 Die Testdaten im Testen von Embedded Systems | 323 |
13.4.3 Erfahrungsbericht: Testdaten im Test von Embedded Systems im Bereich Videotechnik | 324 |
13.5 Testdaten in klassischen und in agilen Projekten | 328 |
13.5.1 Klassisch | 328 |
13.5.2 Agile, Scrum | 328 |
13.6 Testdaten in Normen für Softwareentwicklung und/oder Softwaretest | 330 |
13.6.1 Die neue Normenreihe ISO 29119 | 332 |
13.6.2 Welche Regelungen zu Testdaten und Testdatenmanagement finden sich in ISO-29119-Reihe? | 332 |
13.6.3 Weitere relevante Normen: ISO/IEC 250xx | 335 |
13.7 Testdaten in Bewertungsmodellen | 336 |
13.8 Zusammenfassung | 340 |
Teil III: Praxis | 345 |
14 Vorgehen zum Verbessern eines Testdatenmanagements | 347 |
14.1 Einsteigen in strukturiertes Testdatenmanagement | 347 |
14.2 Etappe 1: Das Testdatenmanagement organisieren | 354 |
14.2.1 Zentralen Testdatenmanagement-Verantwortlichen benennen und dessen Aufgabe definieren | 356 |
14.2.2 Reife des Testprozesses prüfen & bei Bedarf verbessern | 357 |
14.2.3 Bestandsaufnahme & Anforderungsanalyse durchführen: Testdatenmanagementprozess | 359 |
14.2.4 Business Case für das Testdatenmanagement schreiben & entscheiden | 362 |
14.2.5 Bei Bedarf: Übergang vom Testdatenmanagement- Verantwortlichen zum Testdatenmanager | 366 |
14.2.6 Testdatenmanagement-Richtlinie erstellen (Testdatenmanagementstrategie) | 367 |
14.2.7 Entscheiden: zentrales, dezentrales Testdatenmanagement oder Mischform? | 371 |
14.2.8 Rollen definieren | 372 |
14.2.9 Prozesse und Dokumentation definieren | 376 |
14.2.10 Die Testdaten organisieren | 383 |
14.2.11 Werkzeugeinsatz und Hardwareeinsatz prüfen und anpassen | 384 |
14.2.12 Initiales Testdatenmanagementkonzept verfassen | 387 |
14.2.13 Umsetzen des Testdatenmanagements in konkreten Testprojekten sowie Prüfen & Verbessern des Testdatenmanagements | 391 |
14.3 Etappe 2: Die Testdaten organisieren – von der Analyse bis zur Archivierung | 393 |
14.3.1 Bestandsaufnahme durchführen: Stand der aktuell in Gebrauch befindlichen Testdaten | 394 |
14.3.2 Analyse: Testdatenanforderungen verstehen | 394 |
14.3.3 Spezifizieren der Testdaten, Testdatenpakete (® Testdatenspezifikation) | 397 |
14.3.4 Testdaten erstellen & bereitstellen | 402 |
14.3.5 Daten nutzen, anpassen, archivieren | 406 |
14.4 Zusammenfassung | 408 |
15 Checklisten, Mustergliederungen, Fragenkataloge | 411 |
15.1 Mustergliederung TDM-Business-Case | 411 |
15.2 Checkliste zu Anforderungen an den TDM- Business-Case | 412 |
15.3 Checkliste TDM-Richtlinie | 413 |
15.4 Mustergliederung TDM-Konzept | 413 |
15.5 Testdatenspezifikation | 416 |
15.6 Checkliste Testdatenbereitstellungskonzept (nach TestSPICETM) | 417 |
15.7 Checkliste zur Organisation der Testumgebung und der Testdaten | 418 |
15.8 Checkliste Bestandsaufnahme zu Werkzeug- und Hardwareeinsatz | 419 |
15.9 Fragenkatalog zur Bestandsaufnahme Testdatenmanagement | 420 |
15.10 Fragenkatalog zur Bestandsaufnahme: Aktueller Testdatenbestand | 421 |
15.11 Fragenkatalog für das Erheben von Anforderungen an Testdaten (initial) | 422 |
15.12 Fragenkatalog zum Vervollständigen der Testdatenmenge | 423 |
15.13 Empfehlungen zu Methoden und Techniken für das Ermitteln von Anforderungen an Testdaten | 424 |
15.14 Relevante Informationen für die Auswahl der Testdaten | 425 |
15.15 Checkliste zum Spezifizieren der Testdaten | 425 |
15.16 Checkliste: Organisatorische Aspekte der Testdaten managen | 426 |
15.17 Checkliste: Aktivitäten zum Bereitstellen der Testdaten | 427 |
15.18 Empfehlungen zur Testdatengewinnung | 427 |
15.19 Empfehlungen zur Testdatenverwaltung | 428 |
Anhang | 429 |
A Abkürzungen | 431 |
B Glossar | 433 |
C Literatur | 439 |
Index | 451 |
www.dpunkt.de | 0 |