Automated Constraint Extraction from Natural Language for Test Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software development faces challenges in accurately extracting constraints from natural language requirements documents and generating test data, leading to inefficiencies and errors in software design and validation.

Innovation Solution

A system that processes text to identify constraints associated with objects, generating both positive and negative test data based on these constraints, using pattern recognition and relational operators to automate the extraction and validation process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual constraint extraction and test data generation methods are used, then flexibility in handling natural language requirements is maintained, but productivity and accuracy deteriorate due to manual effort and processing time

Engineering Contradiction:
Improvetest data generation efficiencyVSAvoidmanual processing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs self-service by automatically extracting constraints from natural language requirements and generating test data without human intervention. The processor autonomously analyzes the requirements document, identifies constraints using pattern recognition, and produces both positive and negative test data, eliminating the need for manual constraint extraction and test data creation processes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical manual process of constraint extraction and test data generation with an automated computational system. The processor uses pattern recognition algorithms and relational operator analysis to substitute human analytical work, transforming the mechanical manual operations into an automated information processing system that handles natural language requirements and generates test data efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If automated text processing is implemented to extract constraints, then productivity improves, but measurement precision deteriorates due to difficulty in accurately interpreting natural language requirements

Engineering Contradiction:
Improveconstraint extraction speedVSAvoidconstraint extraction accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system introduces pattern recognition rules and constraint templates as intermediaries between natural language requirements and extracted constraints. These intermediaries serve as mediators that translate ambiguous natural language expressions into structured constraint representations, improving both the speed and accuracy of constraint extraction by providing a systematic mapping framework.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system incorporates feedback mechanisms where the extracted constraints are validated against the original natural language requirements to ensure accuracy. The processor iteratively refines constraint extraction by comparing extracted constraints with source requirements, allowing corrections and improvements in constraint interpretation while maintaining high productivity through automated processing.

Inventive Principle:
Principle #23Feedback

3Reliability

If comprehensive test data generation is performed to cover all constraints, then reliability improves, but device complexity increases due to handling multiple constraints and patterns

Engineering Contradiction:
Improvesoftware testing coverageVSAvoidprocessing system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the test data generation process by handling each constraint independently through pattern recognition. The processor divides complex requirements into individual constraints, generates test data for each constraint separately (positive and negative cases), and combines results systematically. This segmentation reduces processing complexity while ensuring comprehensive coverage of all constraints.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system employs universal constraint patterns and templates that can handle multiple types of constraints through a single automated process. The same pattern recognition engine and test data generation mechanism work across different constraint types (numeric, string, date, etc.), reducing device complexity by using a multi-functional approach rather than separate specialized processes for each constraint type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of operation

If pattern recognition is used to extract constraints, then ease of operation improves, but manufacturing precision deteriorates due to potential pattern matching errors

Engineering Contradiction:
Improveconstraint extraction simplicityVSAvoidconstraint extraction accuracy
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The system adjusts pattern recognition parameters and matching thresholds dynamically to balance ease of operation with extraction accuracy. By modifying pattern matching sensitivity, confidence levels, and validation criteria, the system optimizes the trade-off between simple automated extraction and precise constraint identification, reducing pattern matching errors while maintaining operational simplicity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10031839B2Constraint extraction from natural language text for test data generation
Publication Date: 2018.07.24 ACCENTURE GLOBAL SOLUTIONS LTD
  • US10031839B2 patent drawing
  • US10031839B2 patent drawing
  • US10031839B2 patent drawing

AI summary

A device may obtain text to be processed to extract constraints corresponding to an object in the text. The constraints may define values permitted to be associated with the object. The device may extract the constraints based on identifying patterns in the text. The device may generate, based on the constraints, positive test data and negative test data for testing values for the object. The positive test data may include a first value that satisfies each of the constraints, and the negative test data may include a second value that violates at least one of the constraints. The device may provide information that identifies the positive test data and the negative test data.