Client-Side Rule Engine for Dynamic Web Application Configuration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current web application designs face limitations in dynamic configuration and evaluation of rules at runtime, requiring redeployment and imposing architectural complexities, which restricts flexibility and performance, especially in providing seamless user interface navigation and control at a granular level.
Innovation Solution
The solution involves a client-side evaluation of dynamically configurable and reconfigurable rules without redeployment, using a platform that supports rule definition and evaluation at the field level, with a web app add-in providing an administrative interface for rule management and a parser/execution service for client-side rule evaluation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If rule evaluation is performed at the server side at runtime, then rules can be configured at design time with centralized control, but performance is sacrificed and architectural complexity increases
Solution Approach 1:
The patent extracts the rule evaluation functionality from the server side and relocates it to the client side. The rule engine is embedded in the web application client, allowing rules to be evaluated locally in the browser without requiring server-side processing. This extraction resolves the contradiction by maintaining centralized rule configuration while eliminating server-side evaluation overhead, thereby improving performance without sacrificing centralized control.
Solution Approach 2:
The patent segments the rule management system into two distinct components: centralized rule configuration (administered through a web interface) and distributed rule evaluation (executed locally in client browsers). This segmentation allows the system to maintain centralized administrative control while distributing the computational burden to clients, resolving the performance penalty associated with server-side evaluation.
2Adaptability or versatility
If rule configuration is made dynamic at runtime, then flexibility is improved, but architectural complexity and infrastructure requirements increase
Solution Approach 1:
The patent implements self-service by enabling the web application to dynamically configure and reconfigure rules at runtime without requiring redeployment or complex infrastructure changes. The rule engine automatically loads, evaluates, and adapts to new rules through standard web interfaces, eliminating the need for manual architectural modifications or additional infrastructure components.
3Stability of the object's composition
If rule changes require redeployment, then system stability is maintained, but downtime increases and flexibility is reduced
Solution Approach 1:
The patent makes the rule configuration dynamic by allowing rules to be modified, added, or removed at runtime without requiring application redeployment. The embedded rule engine continuously monitors and adapts to rule changes through standard web interfaces, enabling the system to maintain stability while eliminating downtime associated with redeployment operations.
4Device complexity
If navigation rules are declared at design time, then system simplicity is maintained, but the ability to change rules at runtime is limited
Solution Approach 1:
The patent creates a universal rule engine that can handle both design-time declared rules and runtime-dynamically configured rules through the same embedded infrastructure. This multi-functional approach allows the system to maintain simplicity for basic design-time configurations while simultaneously providing runtime flexibility when needed, eliminating the trade-off between simplicity and adaptability.
Data Source
AI summary
Certain example embodiments relate to web applications. In certain example embodiments, an instance of a web application is executed using a client device. In response to the instance being started up, metadata is retrieved using a service embedded in the application and invoked at a bootstrap hook. The metadata is associated with earmarked programmatic elements in the application. At the client device and using an evaluation service injected into operation of the instance, one or more configured rules are evaluated against input. The rules are definable in relation to the earmarked programmatic elements using the retrieved metadata. They specify behavior of the web application and are dynamically (re)configurable while the instance of the web application is running. The (re)configured rules are dynamically effective without requiring web application redeployment, even if (re)configured while the instance of the web application is running. The instance is controllable responsive to the evaluation.


