Douglas Hoffman, Software Quality Methods
Some tests require large data sets. The data may be database records, financial information, communications data packets, or a host of others. The data may be used directly as input for a test or it may be pre-populated data as background records. Self-verifying data (SVD) is a powerful approach to generating large volumes of information in a way that can be checked for integrity. This paper describes three methods for generating SVD, two of which can be easily used for large data sets.
For example, a test may have a prerequisite that the database contains 10,000,000 customers and 100,000,000 sales orders. The test might check adding new customers and orders into the existing data, but not directly reference the preset data at all. How can we generate that kind of volume of data and still be able to check whether adding customers and orders might erroneously modify existing records? SVD is a powerful, proven approach to facilitate such checks.
The paper and talk describe the concepts, applications, and methods for generating such data and checking for data corruption. They cover:
- What self-verifying data is
- Why and how self-verifying data can be used
- Applications where such data is useful
- Three ways to apply self-verifying data
- How to check the data records generated this way