Target Database Seeding via Hierarchical Data Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Generating representative target datasets for software testing is complex and resource-intensive, especially when dealing with multiple parent and dependent tables, as existing methods like cloning or synthetic data generation are costly, time-consuming, and require significant expertise.

Innovation Solution

A graphical user interface (GUI) is provided to access and filter source records in a source database, allowing users to select and generate a target database that accurately represents the source data, ensuring parent and dependent records are properly linked and sampled, thereby facilitating thorough software testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If cloned production data is used for testing, then data representativeness is improved, but cost and time consumption increase

Engineering Contradiction:
Improvedata representativenessVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system creates a simplified copy of production data structure and relationships rather than cloning actual production data. It generates target data that replicates the hierarchical structure, parent-dependent relationships, and data patterns of the source database, achieving representativeness without the overhead of full data cloning.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system generates lightweight, disposable test data that mimics production data characteristics without requiring expensive or time-consuming cloning processes. The target data serves its testing purpose effectively and can be regenerated as needed without significant resource investment.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Adaptability or versatility

If synthetic test data is generated, then data availability is improved, but resource intensity and time consumption increase

Engineering Contradiction:
Improvedata availabilityVSAvoidresource intensity
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

Instead of generating entirely synthetic data, the system copies the structural patterns, relationships, and constraints from existing source data. It preserves the hierarchical structure and parent-dependent relationships while creating target data that is adaptable for testing purposes without requiring intensive synthetic data generation resources.

Inventive Principle:
Principle #26Copying

3Quantity of substance

If a subset of production data is used, then cost is reduced, but skill intensity increases due to referential integrity issues

Engineering Contradiction:
Improvedata volumeVSAvoidskill intensity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The system segments the data extraction process into manageable components: selecting parent tables, identifying dependent tables, establishing relationships, and applying filters. This segmentation automates the complex referential integrity management, reducing the skill intensity required while maintaining data quality and relationships.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary processing layer that automatically manages referential integrity between parent and dependent tables. This intermediary handles the complex relationships and constraints, shielding users from the complexity while ensuring data consistency in the target subset.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Measurement precision

If manual data selection and filtering is performed, then data accuracy is improved, but time consumption and complexity increase

Engineering Contradiction:
Improvedata accuracyVSAvoidprocess complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system enables users to perform self-service data selection and filtering through an intuitive interface. Users can specify their own criteria for selecting parent tables, dependent tables, and filter conditions, allowing them to control data accuracy while the system automates the complex processing and relationship management.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11841836B2Target environment data seeding
Publication Date: 2023.12.12 SALESFORCE INC
  • US11841836B2 patent drawing
  • US11841836B2 patent drawing
  • US11841836B2 patent drawing

AI summary

A method, including accessing a source database including records stored in tables, which are organized in a hierarchy defining respective parents and dependents of the tables, containing respective parent and dependent records, the records including attribute values. Upon presenting a first list of the tables, an input is received selecting a first table. Upon presenting a second list of the tables related to the first table, an input is received selecting a second table in the second list. Upon presenting filtering criteria for the selected tables, a filtering request is received for a given selected table. The request is applied to the given selected table to select a subset of the records in the given selected table and to generate a target database including the subset of the records and the records in the set that are the respective directly related records of the records in the subset.