PDF Back to basics: Fundamentals of test data management

IBM Software

Back to basics: Fundamentals of test data management

How to build and deliver high-quality applications fast using realistic test data

Back to basics: Fundamentals of test data management

1 2345

Introduction

What is test data management?

Discover the two main components of test data management plus pros and cons of common test data generation approaches.

Test data management strategy

Five best practices to help streamline test data preparation and usage.

The bottom line

Managing test data nets real business value.

Resources

Learn more about IBM InfoSphere Optim Test Data Management.

Back to basics: Fundamentals of test data management

Business moves fast--which means that software development teams need to move even faster. The emergence of new software development models, such as the agile development process, has given organizations powerful tools for responding to events quickly and has helped organizations evolve through collaboration between self-organizing, cross-functional teams.

To make the most of agile processes, organizations need effective and efficient testing strategies--complete with processes for governing test data. However, many development, testing and quality assurance (QA) teams struggle to create and maintain the required test data. IT departments often

lack confidence about test data preparation and data usage within the testing discipline, and it may not be clear how to use and administer data efficiently.

That's where test data management comes in.

1 Introduction

3

2 What is test data management?

3 Test data management strategy

4 The bottom line

5 Resources

Back to basics: Fundamentals of test data management

What is test data management?

Simply stated, test data management is the process of creating realistic test data for nonproduction purposes such as development, testing, training or QA.

Research shows that projects cancelled due to poor data quality are 15 percent more costly than successful projects of the same size and type.1 A better test data management strategy not only ensures greater development and testing efficiencies, but helps organizations identify and correct defects early in the development process, when they are cheapest and easiest to fix.

Typically, test data management involves two major activities: test data preparation and test data usage.

Test data preparation involves manufacturing data by copying or subsetting data from production or by developing test data generation scripts and provisioning them for multiple testing environments.

Referential integrity, data quality and data relationships must be retained during the preparation stage. The skills required to complete these tasks typically lie with DBAs, since they are the ones with knowledge of the underlying data model.

1 Introduction

4

2 What is test data management?

3 Test data management strategy

4 The bottom line

5 Resources

Back to basics: Fundamentals of test data management

Typical approaches to test data preparation can include cloning production databases, subsetting data from production databases or writing scripts to synthetically create test data. Subsetting is the recommended method, but each has advantages and drawbacks.

METHODS Cloning production databases

Generating synthetic test data

Subsetting production databases

PROS

CONS

Relatively simple to implement

? Expensive in terms of hardware, license and support costs ? Time-consuming: Increases the time required to run test cases due to large data volumes ? Not agile: Developers, testers and QA staff can't refresh the test data ? Inefficient: Developers and testers can't create targeted test data sets for specific test cases or validate data after

test runs ? Not collaborative between DBA and testing teams ? Not scalable across multiple data sources or applications ? Laborious: Production systems are typically large ? Risky: Nonproduction environments might be compromised or misused (developers, testers and QA staff need

realistic data to do their jobs--but they do not have a valid business reason to access sensitive data such as corporate secrets, revenue projections or customer information)

Safe

? Resource-intensive: Requires a huge commitment from highly skilled DBAs with deep knowledge of the underlying

database schema, as well as knowledge of implicit relationships that might not be formally detailed in the schema

? Tedious: DBAs must intentionally include errors and set boundary conditions within the synthetic data set to ensure

a robust testing process, which adds time to the test data creation process

? Challenging: Despite the time and effort put forth by the DBA to generate synthetic test data, testers find it

challenging to work with because synthetic test data doesn't always reflect the integrity of the original data set or

retain the proper context

? Time-consuming: Process is slower and can be error-prone

Less expensive compared ? Skill-intensive: Without an automated solution, requires highly skilled resources to ensure referential integrity and

to cloning or generating

protect sensitive data

synthetic test data

1 Introduction

5

2 What is test data management?

3 Test data management strategy

4 The bottom line

5 Resources

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download