Continuous Integration Test Data Generation via Production Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Continuous integration systems face challenges in achieving effective testing due to the need for high-quality, up-to-date production-like data that reflects real-world configurations while minimizing storage costs and protecting sensitive information, such as personally identifiable information (PII).

Innovation Solution

A method and system that utilize production data filtered and transformed by a test data generation system to create test data that closely resembles real production data, reducing storage needs and protecting sensitive information, by selecting and transforming attribute values within a hierarchy of records, and integrating this data seamlessly into the continuous integration process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If production data is used for testing, then testing quality and realism are improved, but data storage costs and privacy risks increase

Engineering Contradiction:
Improvetesting qualityVSAvoiddata storage costs
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary subset of production data required for testing purposes, rather than storing or using all production data. The system selectively retrieves specific data elements needed to validate code changes while leaving the remainder in production, thereby improving testing quality without proportionally increasing storage costs.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies local quality by transforming production data to maintain only the specific characteristics and patterns needed for testing effectiveness, while removing or anonymizing sensitive information. This allows the test data to locally preserve the quality attributes necessary for reliable testing while reducing overall data volume and storage requirements.

Inventive Principle:
Principle #3Local quality

2Reliability

If production data is used for testing, then testing quality is improved, but sensitive information exposure increases

Engineering Contradiction:
Improvetesting qualityVSAvoidprivacy risks
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent converts the potential harm of sensitive information exposure into a benefit by systematically transforming and anonymizing production data before use in testing. The same data transformation processes that reduce storage costs also remove personally identifiable information and sensitive attributes, turning a privacy risk into a privacy-protective mechanism.

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

Solution Approach 2:

The patent applies parameter changes by modifying the attributes and characteristics of production data through transformation processes. Sensitive parameters such as personally identifiable information are altered or removed, while non-sensitive parameters that maintain testing realism are preserved, thereby improving testing quality without exposing sensitive information.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If filtered and transformed production data is generated, then data privacy is protected and storage costs are reduced, but data processing complexity increases

Engineering Contradiction:
Improvestorage costsVSAvoiddata processing complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing data filtering and transformation operations in advance, before the data is used for testing. The system pre-processes production data to create optimized test datasets, which reduces the complexity of real-time data processing during testing while maintaining data privacy and reducing storage requirements.

Inventive Principle:
Principle #10Preliminary action

4Quantity of substance

If static or simulated test data is used, then storage costs are reduced, but testing realism and effectiveness decrease

Engineering Contradiction:
Improvestorage costsVSAvoidtesting effectiveness
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies parameter changes by transforming production data parameters to create test data that maintains the statistical properties and patterns of real production data while removing sensitive information. This approach produces test data that is more realistic than static simulated data, improving testing effectiveness without requiring full production data storage.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11269757B2Production data in continuous integration flows
Publication Date: 2022.03.08 SALESFORCE INC
  • US11269757B2 patent drawing
  • US11269757B2 patent drawing
  • US11269757B2 patent drawing

AI summary

The present disclosure relates to software development and, more specifically, to continuous integration (CI) based software development systems, methods, and computer program products in which a system-under-test (SUT) is populated with production data that has been filtered or transformed, or both. In accordance with this approach, the filtered or transformed production test data can be automatically generated and seamlessly integrated into a continuous integration process. In some examples, the resulting filtered or transformed test data closely reflects real production data while, at the same time, consuming less data storage space and protecting an individual's sensitive information.