IP Library Granted Patent US 11,683,360
Granted Patent B2
US 11,683,360 · App. 17/394,747 · Granted Jun 20, 2023

Systems and/or methods for dynamically configuring and evaluating rules with dynamic and/or user inputs at runtime

Inventors: Yashwanth Kalva (Bangalore, IN); Shiva Chetan K S (Arsikere, IN)
Assignee: SOFTWARE AG
H04L67/02G06F8/40G06F8/41G06F9/44G06F9/44505G06F9/54G06F16/168G06F16/908H04L67/01G06F8/60G06F8/65H04L67/1097
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,683,360
App. No.
17/394,747
Granted
Jun 20, 2023
Kind
B2
Abstract

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.

Claims (40)

1. A method of preparing a web application for execution, wherein an instance of the web application is executable using a client-side client device including at least one processor and a memory operably coupled thereto, the method comprising:

earmarking programmatic elements in the web application;

setting up a bootstrap hook for the web application such that, when the instance is started up, metadata associated with the earmarked programmatic elements in the web application is retrieved using a computer-executable retrieval service; and

creating a plurality of hooks in the web application to enable an evaluation service to be injected into operation of the instance of the web application, the evaluation service being programmed to cause dynamic evaluation, at the client-side client device, of one or more configured rules against input provided in connection with the operation of the instance of the web application, the rules being definable in relation to the earmarked programmatic elements using the retrieved metadata, the rules specifying behavior of the web application and being configured in accordance with the mode in which the web application is coded to operate, the rules being both dynamically configurable and dynamically reconfigurable while the instance of the web application is running and being dynamically effective thereafter in the evaluation without requiring redeployment of the web application, even if (re)configured while the instance of the web application is running;

wherein the operation of the instance of the web application is responsive to the evaluation; and

wherein the web application is coded to operate in one of a plurality of different modes, a first mode permitting central rule configuration while prohibiting client-side rule configuration, and a second mode permitting client-side rule configuration.

2. The method of claim 1 , wherein the rules are configured post-deployment and are further (re)configurable post-deployment.

3. The method of claim 1 , further comprising deploying the packaged web application to the client-side client device.

4. The method of claim 1 , wherein the metadata is stored on a persistent store external to web application.

5. The method of claim 4 , wherein the persistent store is shareable by plural different web applications.

6. The method of claim 5 , wherein the plural different web applications are interoperable with one another.

7. The method of claim 1 , wherein the input comprises a value from a database, function, and/or remote API call.

8. The method of claim 1 , wherein a web application context object is used as at least some of the input for the dynamic evaluation.

9. A non-transitory computer readable storage medium tangibly storing instruction that, when performed by a computing system, prepare a web application for execution, wherein an instance of the web application is executable using a client-side client device including at least one processor and a memory operably coupled thereto, the web application being prepared for execution by performing operations comprising:

earmarking programmatic elements in the web application;

setting up a bootstrap hook for the web application such that, when the instance is started up, metadata associated with the earmarked programmatic elements in the web application is retrieved using a computer-executable retrieval service; and

creating a plurality of hooks in the web application to enable an evaluation service to be injected into operation of the instance of the web application, the evaluation service being programmed to cause dynamic evaluation, at the client-side client device, of one or more configured rules against input provided in connection with the operation of the instance of the web application, the rules being definable in relation to the earmarked programmatic elements using the retrieved metadata, the rules specifying behavior of the web application and being configured in accordance with the mode in which the web application is coded to operate, the rules being both dynamically configurable and dynamically reconfigurable while the instance of the web application is running and being dynamically effective thereafter in the evaluation without requiring redeployment of the web application, even if (re)configured while the instance of the web application is running;

wherein the operation of the instance of the web application is responsive to the evaluation; and

wherein the web application is coded to operate in one of a plurality of different modes, a first mode permitting central rule configuration while prohibiting client-side rule configuration, and a second mode permitting client-side rule configuration.

10. The non-transitory computer readable storage medium of claim 9 , wherein the rules are configured post-deployment and are further (re)configurable post-deployment.

11. The non-transitory computer readable storage medium of claim 9 , wherein the packaged web application is deployable to the client-side client device.

12. The non-transitory computer readable storage medium of claim 9 , wherein the metadata is stored on a persistent store external to web application.

13. The non-transitory computer readable storage medium of claim 12 , wherein the persistent store is shareable by plural different web applications.

14. The non-transitory computer readable storage medium of claim 13 , wherein the plural different web applications are interoperable with one another.

15. The non-transitory computer readable storage medium of claim 9 , wherein the input comprises a value from a database, function, and/or remote API call.

16. The non-transitory computer readable storage medium of claim 9 , wherein a web application context object is used as at least some of the input for the dynamic evaluation.

17. A computing system, the system comprising:

an administrative user interface module; and

a client-side client device configured to execute an instance of a web application prepared for execution by at least having:

earmarked programmatic elements in the web application;

a bootstrap hook set up for the web application such that, when the instance is started up, metadata associated with the earmarked programmatic elements in the web application is retrieved using a computer-executable retrieval service; and

a plurality of hooks created in the web application to enable an evaluation service to be injected into operation of the instance of the web application, the evaluation service being programmed to cause dynamic evaluation, at the client-side client device, of one or more configured rules against input provided in connection with the operation of the instance of the web application, the rules being definable in relation to the earmarked programmatic elements using the retrieved metadata, the rules specifying behavior of the web application and being configured in accordance with the mode in which the web application is coded to operate, the rules being both dynamically configurable and dynamically reconfigurable while the instance of the web application is running and being dynamically effective thereafter in the evaluation without requiring redeployment of the web application, even if (re)configured while the instance of the web application is running;

wherein the operation of the instance of the web application is responsive to the evaluation; and

wherein the web application is coded to operate in one of a plurality of different modes, a first mode permitting central rule configuration while prohibiting client-side rule configuration, and a second mode permitting client-side rule configuration;

wherein the administrative user interface module is configured to enable rule (re)configuration; and

wherein the computer-executable retrieval service and the evaluation service are packaged with the instance of the web application.

18. The system of claim 17 , further comprising a persistent store, the persistent store storing the metadata for the web application.

19. The system of claim 17 , wherein the administrative user interface module is not accessible by the client-side client device.

20. The system of claim 17 , wherein the administrative user interface module is packaged with the instance of the web application and is accessible by an end user using the instance of the web application.

21. The system of claim 17 , wherein the client-side client device is configured to execute the instance of the web application using a browser stored thereon.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2024
From: IBM SUPER IPAAS INTEGRATION DEUTSCHLAND GMBH
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 069654/0889 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE FROM IBM SUPER IPAAS INTEGRATION TO IBM SUPER IPAAS INTEGRATION DEUTSCHLAND GMBH PREVIOUSLY RECORDED ON REEL 69381 FRAME 97. ASSIGNOR(S) HEREBY CONFIRMS THE NAME CHANGE. Recorded Dec 12, 2024
From: SAG INTEGRATION GMBH
To: IBM SUPER IPAAS INTEGRATION DEUTSCHLAND GMBH
Reel/Frame 069631/0360 →
CHANGE OF NAME Recorded Nov 14, 2024
From: SAG INTEGRATION GMBH
To: IBM SUPER IPAAS INTEGRATION
Reel/Frame 069381/0097 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 26, 2024
From: SAG DEUTSCHLAND GMBH
To: SAG INTEGRATION GMBH
Reel/Frame 068712/0520 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2024
From: SOFTWARE AG
To: SAG DEUTSCHLAND GMBH
Reel/Frame 068694/0105 →
Continuity (2)
Division 16862886 · Apr 30, 2020
Related Publication 20210367998A1 · Nov 25, 2021
Cited By (1)
US 12,418,418