Rule Testing Framework for Service Provider Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Rule testing for service providers is laborious and time-consuming due to the need to iterate over numerous combinations of attribute values in rule engines, requiring extensive computing resources and leading to potential operational issues and customer churn.
Innovation Solution
A rule testing framework that uses Boolean expressions to test rules in a linear manner by selecting one variable at a time, setting the remaining variables to values that make the entire expression equal to the chosen variable, reducing the number of test cases from exponential to linear complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional rule testing methods are used that iterate over all potential input values for attributes, then comprehensive rule validation is achieved, but the testing process becomes laborious and time-consuming
Solution Approach 1:
The patent segments the rule testing process by identifying individual attributes and their potential values separately. Instead of testing all combinations at once, it breaks down the testing into manageable segments where each attribute is tested independently with its valid values, reducing the overall complexity and time required while maintaining validation completeness.
Solution Approach 2:
The patent performs preliminary action by first determining the valid values for each attribute before conducting the actual rule testing. This preliminary step establishes the testing framework and identifies which values are valid for each attribute, allowing subsequent testing to proceed efficiently without redundant iterations over invalid combinations.
2Reliability
If traditional rule testing methods are used that iterate over all potential input values for attributes, then comprehensive rule validation is achieved, but large amounts of computing resources are required
Solution Approach 1:
The patent segments the computing workload by processing each attribute and its valid values independently rather than computing all attribute combinations simultaneously. This segmentation reduces peak computing resource requirements and allows for more efficient resource utilization during the testing process.
Solution Approach 2:
The patent extracts and determines valid values for each attribute separately before using them in rule testing. By taking out the valid value determination step and performing it independently, the system avoids redundant computation of invalid value combinations, thereby reducing overall computing resource consumption.
3Reliability
If rules with hundreds or thousands of different attributes are tested using traditional methods, then complete coverage is achieved, but the testing process becomes excessively complex
Solution Approach 1:
The patent applies segmentation by treating each attribute as a separate entity with its own valid values. This approach transforms the complexity of testing hundreds or thousands of attribute combinations into a series of simpler, independent tests for each attribute, making the overall process more manageable and less complex while maintaining complete coverage.
Solution Approach 2:
The patent performs preliminary action by establishing the valid values for each attribute before conducting rule testing. This preliminary framework simplifies the subsequent testing process by providing clear guidance on which values to test, thereby reducing the complexity of managing hundreds or thousands of potential combinations.
Data Source
AI summary
There are provided systems and methods for a rule testing framework for executable rules of a service provider system. During processing rule implementation and/or testing for rules currently implemented in production systems, different values for the variables and attributes of the rule may be required to be tested to ensure proper rule functioning. In order to test the rule, the expression of the rule is determined, and each variable is considered in turn. The expression is evaluated so that the selected variable becomes the output of the expression. Thus, the values of the other variables may then be determined so that the selected variable is the output of the expression. The rule may then be tested for positive and negative values of the selected variable so that the rules functioning for the selected variable is tested.


