Behavioral Model Weight Assignment for Software Test Coverage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional model-based testing technologies face challenges in creating intuitive and efficient behavioral models for software systems, leading to repetitive and computationally intensive test generation, with current methods often producing redundant test suites that do not provide complete coverage of executable paths.
Innovation Solution
A system that creates a behavioral model using branches, decisions, and options, applying a weight assignment technique to generate global identifiers for test cases, allowing for the efficient generation and execution of test cases that provide complete coverage of software program paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional model-based testing uses decision tables to describe applications in a linear manner, then complete path coverage can be achieved, but the model generation becomes repetitious and tedious
Solution Approach 1:
The patent segments the behavioral model into hierarchical components: application models are divided into scenes, which are further divided into transitions, and each transition contains decision elements. This segmentation allows testers to work with manageable units rather than creating complete linear decision tables, reducing repetitious work while maintaining comprehensive path coverage through systematic composition of segmented elements.
Solution Approach 2:
The patent introduces a new dimensional structure by organizing behavioral models hierarchically across multiple levels (application → scene → transition → decision) rather than using traditional linear decision tables. This dimensional transformation enables non-linear model creation approaches while still achieving complete path coverage through the structured hierarchy, making model generation more intuitive and less tedious.
2Reliability
If traditional model-based testing enumerates all paths explicitly in decision tables, then complete test coverage is achieved, but test generation becomes computationally intensive
Solution Approach 1:
The patent performs preliminary actions by pre-defining behavioral models, scenes, and transitions with their associated decisions and outcomes before actual test execution. The system pre-processes the behavioral model to identify all possible paths and generates test cases on-demand from this pre-structured model, avoiding computationally intensive enumeration during test execution while maintaining complete coverage.
Solution Approach 2:
The patent introduces dynamic test generation where test cases are instantiated on-demand from the pre-defined behavioral model rather than enumerating all paths statically. The system dynamically selects and generates test cases based on the pre-structured scenes and transitions, reducing computational resources required during test execution while maintaining comprehensive path coverage through the dynamic instantiation process.
3Reliability
If all test cases are instantiated before execution in traditional model-based testing, then complete path coverage is ensured, but testing efficiency is reduced
Solution Approach 1:
The patent implements self-service test generation where the pre-defined behavioral model automatically generates and provides test cases on-demand during execution rather than requiring all test cases to be instantiated beforehand. The model serves itself by dynamically instantiating appropriate test cases from its pre-structured scenes and transitions, ensuring complete path coverage while improving testing efficiency through selective, on-demand generation.
Data Source
AI summary
Some embodiments of the present invention provide a system that tests a software program. During operation, the system creates a behavioral model of the software program using branches, decisions, and options. Next, the system applies a weight assignment technique to the behavioral model to create a set of global identifiers (IDs), which correspond to test cases of the behavioral model. The system then generates a test case from the behavioral model and executes the test case on the software program. Finally, the system analyzes an output of the executed test case to determine a validity of the software program.


