+ All Categories
Home > Documents > IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation,...

IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation,...

Date post: 16-Aug-2021
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
10
IBM i Test Data Management Original Software Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.
Transcript
Page 1: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

IBM i Test DataManagement

Original Software

Creation, maintenance, validation, use, and re-use oftest data environments on the IBM i.

Page 2: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

CONTENTS

IBM i Test Data Management

Introduction

Test Data

Data Confidentiality

Data Re-use

Validation

Summary

3

4

5

6

8

9

This guide explores the key principles and techniques as they relate to thecreation, maintenance, validation, use, and re-use of test data environmentson the IBM i, IBM iSeries & IBM AS/400.

TestBench for IBM i is the definitive product for test data management and ineach section, we will highlight ‘How TestBench Does It’ and share some of thesecrets behind its success.

0 3

Page 3: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

INTRODUCTION:0 3

Test DataA copy of the live database is unwieldy, slowing testing, and makingvalidation almost impossible. The ideal test database contains arepresentative cross-section of the data which maintains referentialintegrity. If this can be achieved, many more test environments can bestored concurrently to better support multiple teams and scenarios.

Data ConfidentialityGDPR legislation changed the rules for any organization processing data onEU citizens and extended the requirements of industry-specific initiativessuch as PCI compliance and HIPAA in the US. What was best practice,became an unavoidable necessity. However, the need for meaningful testdata still exists and simply replacing sensitive data with random charactersdoes not work, especially in system and UAT testing.

Data Re-useThe creation of test data environments is often difficult, so once completethere is a reluctance to repeat the process. While understandable, thedownside is that the data loses connection to current processing dates andis inevitably corrupted as testing is performed.

ValidationIBM i shops know that, while errors in the UI are painful, the real problemsstart when the database gets corrupted. Such errors require the affectedapplications to be taken offline and in the worst-case scenario, the mostrecent un-corrupted backup must be restored, and any subsequenttransactions repeated.

You will find a section on each of these areas in this guide to facilitate yourresearch.

IBM i Test Data Management

What are the key challenges of test data management?

Page 4: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

T E S T D A T A :

Create a series of programs to populate the files from a datasource such as a spreadsheet. This can work but the workload tocreate and maintain such a suite of programs is significant.Use an automation tool such as Original Software’s TestDrive tocreate master data and then drive transactions through the userinterface or APIs. This is a valid approach but is slow and onlysuitable for smaller data volumes.Ask the testers to create their own. This may work for small datavolumes, and as an occasional approach, but is a poor use of thetesters’ time.

Developers, Project Managers, QA Test Teams, UATTeams, and Trainers all need test data and ideally inan environment dedicated to them. So, what do you need to consider?

What Data Do I Need?

‘Everything’ sounds like a good starting point, and that’s where every ITshop started. It is an approach that has worked in the past. But thechances are that you will run out of disk space, and even if the disk isavailable, you will have only created one test environment when manyare needed.

Anyway, extensive test databases are a bad idea. Each test will taketoo long – you don’t want to wait five hours every time you test the‘end of day’ run. Big data sets are also impossible to validate – howcan you hope to check the database state if thousands of rows havebeen affected?

So, a sub-set is the only way to go, but there’s a lot more to it. The first100 rows from every table will result in a smaller database but will beuseless as it ignores the need to maintain referential integrity. Onceyou’ve solved referential integrity and remembered to include theforeign keys, you’re still not there. To be useful the test environmentneeds to include a representative selection of master records andtransaction data to support all the test scenarios.

Your Options

0 4IBM i Test Data Management

Page 5: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

0 5 How TestBench Does It?

TestBench helps you create what you really want – a representativesub-set of your live data that respects all aspects of referentialintegrity. The starting point is a data model that TestBench helps youcreate using your existing database standards.

Once in place, you can select which records to include at any level ofthe model to give you total control of the database size andpopulations. Alternatively, you can ask TestBench to sample the dataheld in a file. For example, you can have 50 records from eachcombination of state, type, status, method, etc., or whateverfields drive the business processes. This is the way to trulyrepresentative data.

TestBench will also take care of creating a new environment, handlingphysical, logical, and joined logical files, triggers, constraints, and SQLtables with ease.

You can extract from IASPs, the local machine, or even remote IBM iservers, and you can even modify the data while the extraction isexecuted.

IBM i Test Data Management

D A T A C O N F I D E N T I A L I T Y :

GDPR, HIPAA, or simply good practice? It does notmatter why, what matters is that you can no longerallow users to access personal or sensitiveinformation held in your live environment. So, whatdo you need to consider?

Sensitive or What?

GDPR is the broadest piece of data protection legislation to date andhas sharp teeth in the shape of significant fines for non-compliance. Inbroad terms, if you hold any personal data on a citizen of the EuropeanUnion you must comply with GDPR and that means the data must bekept confidential.

In the US, the Privacy Act of 1974 covers confidentiality of personaldata, and more specifically HIPAA addresses the Health Insuranceindustry, the Gramm-Leach-Bliley Act, and FSA (UK) addressesFinancial Services.

In light of these regulations, internal and external auditors areincreasingly focused on data confidentiality and IT shops need todemonstrate that they have followed best practices.

Page 6: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

0 6IBM i Test Data Management

D A T A C O N F I D E N T I A L I T Y :

First, identify all fields in all tables that contain sensitiveinformation. For those of you with program-described files, thistask is an order of magnitude more difficult.For each field decide how the data should be masked.Determine if there are relationships between the fields that must bemaintained and if so, ensure that the masking is synchronized.

Your Options

It is difficult to effectively mask test data without destroying itsusefulness:

How TestBench Does It?

TestBench provides several options to mask data and respect dataconfidentiality requirements. Vertical Scrambling is the starting pointfor many accounts and may be sufficient for your needs. This movesdata between the rows in a table so that the information remainsmeaningful but untraceable. For example, after scrambling, a row maycontain a First Name of ‘David,’ a Surname of ‘Smith,’ and a City of‘New York.’ However, in the original data, all these items came fromdifferent rows.

TestBench provides several custom masking routines such as USSocial Security Numbers and Credit Card Numbers for more specificneeds. Finally, you can also develop your own masking algorithms andembed them within the TestBench framework.

Uniquely, these masking choices can be synchronized across multipletables so that the same data is always masked in the same waywherever it occurs.

D A T A R E - U S E :

It takes time and effort to create a test environmentbut what can you do when that environmentbecomes corrupted through a failed test or yousimply run out of data at the correct initial state?

Page 7: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

0 7IBM i Test Data Management

D A T A R E - U S E :

Take regular back-ups of the test environment and restore it ondemandRegularly re-create the test environment

Need an ‘Undo’ Button?

What you need is the ability to take your data back to a previous stateso that the same test can be re-run. The importance of knowing thestate of the data at the start of a test cannot be under-estimated.Without a known starting point, the expected state of the data at theend of the test cannot be defined and without that definition, it isimpossible to verify the database level activity.

Your Options

The reality for many IT shops is that they live with test environmentsthat they know are corrupted to a greater or lesser extent. Duediligence at the database level is therefore significantly compromisedor simply impossible. At best, allowances must be made for the finalstate of the data given the less than perfect state of the start data.

They are the only options, but they take time, and given that the testenvironment is a shared resource, it is difficult to find opportunities toexecute. This explains why many test environments are frequently outof date and have a level of data corruption.

How TestBench Does It?

TestBench provides an all-encompassing, ‘Undo’ button. Thiscapability is based on the IBM journals but extended to cover otherdata objects such as data areas. In addition, the IBM journalingsupport does not cover operations such as Clear Physical File whichare handled automatically by TestBench.

You can create as many Checkpoints as required during your use of thetest environment, perhaps setting one each time a significant part ofthe testing has been completed. Once created, you can simply returnthe test environment to the state that existed at the time theCheckpoint was taken.

Page 8: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

0 8IBM i Test Data Management

V A L I D A T I O N :

Identify every table which could be affected during a test. It isessential to differentiate between those that could be affected andthose that should be affected; otherwise, collateral impacts will bemissed.

Create numerous and complex SQL statements to ensure that everyfield in every table contains the expected data. This can also beachieved by creating a custom suite of validation programs.

Extend the step above to ensure that summary information iscorrectly based on the total value of supporting rows.

IBM i IT shops cover a wide spectrum, from puregreen screen, through hybrid UI technologies tothose for whom the IBM i is purely a serversupporting a range of APIs. Wherever you are onthat spectrum, the IBM i is holding data critical toyour company, and it is self-evident that databasevalidation should be a requirement of every test.

Getting Under the Covers

IBM i applications are rich in database activity, and much of thatprocessing is performed by APIs or batch processes that do not haveany form of user interface.

Given the damage that a poorly written program can inflict on thiscritical corporate asset, validating that every database activity iscorrect is difficult and IBM provide few tools to help.

Your Options

This is a challenging area for any IT shop, and the lack of technicalknowledge in your test teams may be an issue with any of thefollowing techniques:

Page 9: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

0 9IBM i Test Data Management

Data Rules can be created that specifies the expected state of eachfield after every update dependent upon its status.

TestBench can compare every element of the database activitymonitored during a test to a baseline set of results and highlightthe differences.

How TestBench Does It?

TestBench monitors every update to every table and data areaincluding multiple updates to a single row so that it is easy to see atwhat point in a test a data row became corrupted. This can be a largevolume of information so TestBench provides 3 key analysistechniques.

A static comparison can be run of the resultant file against anexpected version of that same file, and the differences highlighted. Asimilar comparison is availablefor reports.

E X T R A C T , M A S K , U S E , C H E C K ,R E S E T & R E - U S E :

In summary, the creation and management of testdata environments is a challenge, but here are thekey steps to success:

Page 10: IBM i Test Data Management NEW...IBM i Test Data MO riga inan l Sa oftg wae re ment Creation, maintenance, validation, use, and re-use of test data environments on the IBM i.

IBM i Test DataManagementCreation, maintenance, validation, use, and re-use oftest data environments on the IBM i.


Recommended