Synthetic Check Data Generation for Software Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for testing software applications that process electronic checks face challenges such as the need for real-world data that covers all possible code paths, which is impractical due to the volume of data and sensitivity of information.

Innovation Solution

The development of software technology that generates anonymized check data by determining possible code paths, selecting a subset of electronic check records, and anonymizing these records to create test data that can be stored in a source control system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If real-world check data is used for testing to cover all code paths, then testing completeness is improved, but data volume and sensitivity issues worsen

Engineering Contradiction:
Improvetesting completenessVSAvoiddata volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent creates synthetic test data that copies the structural and functional characteristics of real check data without using actual sensitive information. The system generates artificial check records with realistic formats, fields, and relationships, enabling complete code path coverage while avoiding the need to handle large volumes of sensitive real-world data.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system transforms real check data parameters into synthetic equivalents by changing sensitive parameters (account numbers, names, addresses) into non-sensitive generated values while preserving structural parameters (data types, relationships, validation rules). This allows testing completeness without requiring actual real-world data volumes.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If real-world check data is used for testing to cover all code paths, then testing completeness is improved, but sensitivity of information worsens

Engineering Contradiction:
Improvetesting completenessVSAvoidinformation sensitivity
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent creates synthetic test data that copies the structural and functional characteristics of real check data without using actual sensitive information. The system generates artificial check records with realistic formats, fields, and relationships, enabling complete code path coverage while avoiding the need to handle large volumes of sensitive real-world data.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system converts the harmful aspect of sensitive information into a benefit by using the structure and validation rules of real check data to generate synthetic data that is equally effective for testing purposes but completely safe from security risks. The sensitivity issue is transformed into an opportunity to create more controlled and reliable test data.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Productivity

If a subset of check records is selected to minimize data volume, then data processing efficiency is improved, but code path coverage may worsen

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidcode path coverage
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary analysis of the software application's code structure to identify all possible code paths before generating test data. This upfront action allows the system to create a minimal subset of synthetic check records that are specifically designed to trigger each code path, ensuring complete coverage while maintaining small data volume for efficient processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system transforms real check data parameters into synthetic equivalents by changing sensitive parameters (account numbers, names, addresses) into non-sensitive generated values while preserving structural parameters (data types, relationships, validation rules). This allows testing completeness without requiring actual real-world data volumes.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250037122A1Computer systems and methods for generation of check processing test data
Publication Date: 2025.01.30 CAPITAL ONE FINANCIAL CORP
  • US20250037122A1 patent drawing
  • US20250037122A1 patent drawing
  • US20250037122A1 patent drawing

AI summary

A computing platform may be installed with software technology for generating anonymized test check data that configures the computing platform to: (i) determine a set of possible code paths encoded within a software application associated with check processing; (ii) based on the determined set of possible code paths and a set of electronic check records for individual checks, determine a subset of electronic check records from the set of electronic check records to be used for testing the software application; and (iii) anonymize the subset of electronic check records to be used for testing the software application by, for each respective electronic check record in the subset of electronic check records, modifying the respective electronic check record and thereby producing a respective anonymized check record for the respective electronic check record.