Data-Centric Execution Engine for Business Logic Automation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software applications often require users to write code or rely on resource-intensive methods to extend functionality, which can be time-consuming and non-portable, limiting user flexibility and efficiency in modifying applications.
Innovation Solution
A data-centric approach using an execution engine that accesses a commingled application model with a data model and business logic model, where business logic rules are associated with an index tree, allowing the engine to identify and execute relevant actions based on events, thereby enabling users to extend application functionality without coding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If users write code to extend application functionality, then customization capability is improved, but time consumption and resource requirements increase
Solution Approach 1:
The patent introduces a visual modeling tool as an intermediary between users and application functionality. Users create extensions through visual models rather than direct code writing, and the system automatically generates the underlying code. This mediator resolves the contradiction by providing customization capability while eliminating the time-consuming manual coding process.
Solution Approach 2:
The system enables self-service by automatically generating executable code from user-created visual models. The code generation happens automatically without requiring users to manually write or understand programming code, thus providing customization capability while saving significant time and resources.
2Adaptability or versatility
If users create application extensions, then functionality is extended, but portability decreases due to system-specific configuration
Solution Approach 1:
The patent uses visual models as portable representations of application extensions. These models can be copied and transferred between different systems or users. The visual model format serves as a portable copy that can be instantiated on different platforms, resolving the portability issue while maintaining functionality extension capability.
Solution Approach 2:
The visual modeling approach creates universal models that can serve multiple purposes and be used across different systems. The models are not tied to a specific implementation platform, allowing the same model to be deployed on different systems, thus improving portability while maintaining the ability to extend functionality.
3Ease of operation
If code generation is used to allow users to extend applications, then ease of use is improved, but difficulty in determining which code to use increases
Solution Approach 1:
The patent segments the generated code into distinct components that correspond to specific elements in the visual model. Each part of the visual model generates a corresponding segment of code, making it easy to identify and modify specific portions. This segmentation resolves the difficulty of determining which code to use by creating a direct, traceable mapping between model elements and code segments.
4Ease of operation
If model engine approach is implemented, then user-friendly extension is improved, but processing delays occur when model changes require full regeneration
Solution Approach 1:
The system performs preliminary actions by maintaining a mapping between visual model elements and generated code segments. When the model changes, the system can identify only the affected segments rather than regenerating the entire code base. This preliminary organization of information enables incremental updates, improving processing speed while maintaining user-friendly model-based extension.
Solution Approach 2:
The patent implements dynamic code generation where the system adapts to model changes in real-time. Instead of static full-regeneration approaches, the system dynamically identifies and updates only the necessary code segments based on model changes. This dynamic approach maintains the user-friendly model interface while eliminating processing delays associated with full regeneration.
Data Source
AI summary
The present invention extends to methods, systems, and computer program products for processing data-centric business models. An execution engine accesses a commingled data-centric application model that includes a data model for a data store and a business logic model for interacting with data entities contained in the data store. The execution engine receives an event related to the data store and identifies an involved data entity corresponding to the received event. The execution engine identifies a business logic rule indicated as affecting the involved data entity. The execution engine establishes a context for evaluating the identified business logic rule. The execution engine evaluates the conditions of the business logic rule in accordance with the established context. The execution engine executes any appropriate actions indicated in the business logic rule as a result of the conditions of the business logic rule being satisfied.


