Object-Oriented Rule-Based System for Business Logic Adaptability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current business applications struggle with flexibility and rapid adaptability due to embedded business logic, requiring costly and time-consuming code modifications to adapt to changing market needs, and existing rule-based systems are not effectively integrated with object-oriented programming, limiting decision-making and inferencing capabilities.
Innovation Solution
An object-oriented rule-based system that combines rule-based technology with the RETE match algorithm, allowing for compiled condition pattern matching and runtime addition or removal of rules, utilizing a RETE node structure and transformer integer arrays to propagate tokens based on inheritance hierarchies, enabling efficient decision-making and inferencing in business applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If business logic is embedded or hard-coded in application code, then the application structure is simple and cohesive, but the application becomes difficult to change quickly to adapt to changing market needs
Solution Approach 1:
The patent segments business logic from application code by introducing a separate rule-based system. Business rules are extracted into independent rule objects that can be modified without changing the core application code. This segmentation allows the application to adapt to changing market needs by simply updating rule sets rather than reworking the entire codebase.
Solution Approach 2:
The patent extracts business logic from the embedded code structure and places it into a separate rule-based system. The rule engine independently processes business rules without requiring modifications to the application's core code, enabling rapid adaptation to changing requirements while maintaining system architecture integrity.
2Productivity
If developers modify embedded business logic to adapt to changing requirements, then the business logic can be updated, but the process is time-consuming and expensive
Solution Approach 1:
The patent enables domain experts to directly modify business rules without requiring developer intervention. The rule-based system provides a user-friendly interface where non-technical users can create, modify, and remove business rules to reflect dynamic changes in business logic, eliminating the time-consuming cycle of developer modification, testing, and deployment.
Solution Approach 2:
The patent prepares the system in advance by establishing a rule-based architecture that anticipates future business logic changes. This preliminary structural preparation allows rules to be modified rapidly when needed, rather than requiring ad-hoc code modifications and rework for each change scenario.
3Adaptability or versatility
If a rule-based system is implemented to separate business logic from application code, then flexibility and adaptability improve, but the system complexity increases
Solution Approach 1:
The patent introduces an inference engine as an intermediary between the application code and business rules. This mediator handles the complexity of rule processing, pattern matching, and execution automatically, allowing business rules to be flexible and adaptable while the intermediary manages the system integration complexity behind the scenes.
Solution Approach 2:
The patent creates a universal rule-based framework that can handle various types of business logic across different applications. The RETE match algorithm and inference engine provide multi-functional capabilities that work with diverse rule formats and business domains, reducing overall system integration complexity through a standardized approach.
4Speed
If the RETE match algorithm is used to optimize rule-based system performance, then forward chaining inference speed improves, but the algorithm complexity increases
Solution Approach 1:
The patent applies the RETE match algorithm during the rule compilation phase to pre-process and optimize the rule structure. By performing preliminary analysis and structuring of rules using RETE before execution, the system achieves high-speed forward chaining inference while the algorithmic complexity is contained within the compilation process rather than affecting runtime performance.
Data Source
AI summary
An object oriented rule-based system and method that combines rule-based technology and object-oriented programming in order to provide an efficient approach for adding decision-making and inferencing capabilities to different applications. The rule-based system can include a RETE match algorithm, which can be modified to support pure object-based variable pattern matching. The LHS of a rule base can be compiled into several condition patterns, which includes a transformer integer array in order to record object variables positions. A RETE node can propagate tokens smoothly by asserting the object variable based on inheritance type hierarchy and the rules can be fired when the conditions are satisfied. The object oriented rule system can be utilized to add or remove rules at run time.


