IP Library Granted Patent US 6,868,413
Granted Patent B1
US 6,868,413 · App. 09/853,360 · Granted Mar 15, 2005

System and method for customizing and processing business logic rules in a business process system

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 6,868,413
App. No.
09/853,360
Granted
Mar 15, 2005
Kind
B1
Abstract

Systems and methods for customizing business logic rules within a business process automation system and for processing business logic rules in a business process automation system are disclosed. The method for customizing business rules of a business logic application generally comprises serving a content page to a client browser of a client by a server that allows entering and modifying of data relating to a business logic rule, generating data by the server according to a predefined format such as a predefined XML format from information received via the content page, and automatically committing the generated data in the predefined format into a database. Preferably, a verification process such as by using DTDs (Document Type Definitions) is performed by the server prior to committing the data. The database stores data including data relating to business logic rules for implementing business logic as entries in the database and the generated data is committed into a corresponding entry in the database. Upon committing, the committed database business rule entry is ready for execution by the business logic application.

Claims (110)

1. A system for changing business processes of a business application, comprising:

means for serving a content page to a client browser of a client by a server, the content page allowing for entering and modifying of data relating to a business rule;

means for generating data by the server according to a predefined format from information received via the content page; and

means for automatically committing the generated data in the predefined format into a database, the database storing data including data relating to business rules for implementing business rules entries in the database, the generated data being committed into a corresponding entry in the database;

wherein upon said committing, the committed database business rule entry is ready for execution by the business application;

wherein the entering of data includes selectively enabling, conditioning, calibrating, and disabling the business rule via the content page provided by the server.

2. The system for changing business processes of a business application of claim 1 , wherein data for each business rule includes general information data, condition data, action data, and schedule data.

3. The system for changing business processes of a business application of claim 1 , further comprising means for, prior to said committing, automatically verifying the entry corresponding to the business rule in the predefined format using DTDs (Document Type Definitions).

4. The system for changing business processes of a business application of claim 1 , wherein said committing the entered data according to the predefined format includes committing the entered data according to a predefined XML format.

5. The system for changing business processes of a business application of claim 4 , further comprising means for prior to said committing, automatically verifying the entry corresponding to the business rule in the predefined XML format using DTDs (Document Type Definitions).

6. The system for changing business processes of a business application of claim 1 , wherein said serving the content page to the client browser includes serving an expression builder content page for entering and modifying of the data relating to the business rule expressed as an expression having symbols to be resolved when an instance of the business rule is one of created and executed by the business application.

7. The system for changing business processes of business application of claim 6 , wherein data for each business rule includes schedule data, the schedule data selectively includes schedule expressed as an expression via the expression builder content page.

8. The system for changing business processes of a business application of claim 6 , wherein data for each business rule includes action data, the action data selectively includes action data expressed as an expression via the expression builder content page.

9. The system for changing business processes of a business application of claim 6 , wherein data for each business rule includes condition data, the condition data selectively includes a condition expressed as an expression via the expression builder content page.

10. The system for changing business processes of a business application of claim 1 , wherein said serving the content page to the client browser includes serving a business rules management content page for displaying business rules stored as entries in the database and for allowing one of selecting to create a new business rule and selecting to modify an existing business rule.

11. A computer program product for changing business processes of a business application, comprising:

computer code that serves a content page to a client browser of a client, the content page allowing for entering and modifying of data relating to a business rule;

computer code that generates data according to a predefined format from information received via the content page;

computer code that automatically commits the generated data in the predefined formal into a database that stores data including data relating to business rules for implementing business rules as entries in the database, the computer code commits the generated data into a corresponding entry in the database such that the committed database business rule entry is ready for execution by the business application; and

a computer readable medium that stores said computer codes;

wherein computer code that serves the content page also allows selectively enabling, conditioning, calibrating, and disabling the business rule via the content page.

12. The computer program product for changing business processes of a business application of claim 11 , wherein data for each business rule includes general information data, condition data, action data, and schedule data.

13. The computer program product for changing business processes of a business application of claim 11 , further comprising computer code that automatically verifies the entry corresponding to the business rule in the predefined format using DTDs (Document Type Definitions).

14. The computer program product for changing business processes of a business application of claim 11 , wherein computer code that commits the entered data according to the predefined format includes computer code that commits the entered data according to a predefined XML format.

15. The computer program product for changing business processes of a business application of claim 14 , further comprising computer code that automatically verifies the entry corresponding to the business rule in the predefined XML format using DTDs (Document Type Definitions).

16. The computer program product for changing business processes of a business application of claim 11 , wherein the computer code that serves the content page includes computer code that serves an expression builder content page for entering and modifying of the data relating to the business rule expressed as an expression having symbols to be resolved when an instance of the business rule is one of created and executed by the business application.

17. The computer program product for changing business processes of a business application of claim 16 , wherein data for each business rule includes schedule data, the schedule data selectively includes schedule expressed as an expression via the expression builder content page.

18. The computer program product for changing business processes of business application of claim 16 , wherein data for each business rule includes action data, the action data selectively includes action data expressed as an expression via the expression builder content page.

19. The computer program product for changing business processes of a business application of claim 16 , wherein data for each business rule includes condition data, the condition data selectively includes a condition expressed as an expression via the expression builder content page.

20. The computer program product for changing business processes of a business application of claim 11 , wherein the computer code that serves the content page to the client browser includes computer code that serves a business rules management content page for displaying business rules stored as entries in the database and for allowing one of selecting to create a new business rule and selecting to modify an existing business rule.

21. A business application system adapted for changing business processes associated with a business application, comprising:

a client having a client browser;

a database for storing, data including data relating to business rules for implementing business rules as entries in the database; and

a server having a web server adapted to serve at least one content page to the client browser for entering and modifying of the data of a business rule corresponding to an entry in the database,

wherein said server is adapted to automatically commit an entry corresponding to the business rule into the database according to a predefined format after modifications via the content page at said client browser and wherein the committed database business rule entry is ready for execution upon commitment by said server;

wherein each business rule can be selectively enabled, conditioned, calibrated, and disabled via the content page provided by the server at the client browser.

22. The business application system of claim 21 , wherein data for each business rule includes general information data, condition data, action data, and schedule data.

23. The business application system of claim 21 , wherein said server is adapted to verify the entry corresponding to the business rule in the predefined format using DTDs (Document Type Definitions).

24. The business application system of claim 21 , wherein the predefined format for committing the entry corresponding to the business rule into the database is a predefined XML format.

25. The business application system of claim 24 , wherein said server is adapted to verify the entry corresponding to the business rule in the predefined XML format using DTDs (Document Type Definitions).

26. The business application system of claim 21 , wherein said server is further adapted to serve an expression builder content page to the client browser for entering and modifying of the data of the business rule expressed as an expression having symbols to he resolved when an instance of the business rule is one of created and executed.

27. The business application system of claim 26 , wherein data for each business rule includes schedule data, the schedule data selectively includes a schedule expressed as an expression via the expression builder content page.

28. The business application system of claim 26 , wherein data for each business rule includes action data, the action data selectively includes action data expressed as an expression via the expression builder content page.

29. The business application system of claim 26 , wherein data for each business rule includes condition data, the condition data selectively includes a condition expressed as an expression via the expression builder content page.

30. The business application system of claim 21 , wherein said server is further adapted to serve a business rules management content page to the client browser for displaying business rules stored as entries in the database and for allowing one of selecting to create a new business rule and selecting to modify an existing business rule.

31. An application/web server for implementing a business application system adapted for changing business processes associated with a business application, comprising:

a web server in communication with a client browser of a client and adapted to serve at least one non-programmatic interactive user page to the client browser for obtaining data for a customized business rule; and

an application server in communication with a database containing data relating to business rules for implementing business rules as entries in the database, wherein the data obtained for the customized business rule corresponds to an entry in the database,

wherein the application server is adapted to dynamically and automatically commit the data as an entry corresponding to the customized business rule into the database in a predefined format after obtaining the data via the user page at said client browser and wherein the committed database business rule entry is ready for execution upon commitment by said application server;

wherein each business rule in the database can be selectively enabled, conditioned, calibrated, and disabled via the at least one non-programmatic interactive user page.

32. The application/web server for implementing a business application system of claim 31 , wherein said application server is adapted to verify the entry corresponding to the customized business rule in the predefined format using DTDs (Document Type Definitions).

33. The application/web server for implementing a business application system of claim 31 , wherein the predefined format for committing the entry corresponding to the business rule into the database is a predefined XML format.

34. The application/web server for implementing a business application system of claim 33 , wherein said application server is adapted to verify the entry corresponding to the business rule in the predefined XML format using DTDs (Document Type Definitions).

35. The application/web server for implementing a business application system of claim 31 , wherein data for each business rule includes general information data, condition data, action data, and schedule data.

36. The application/web server for implementing a business application system of claim 31 , wherein the at least one non-programmatic interactive user page includes a business rules management page for displaying business rules stored as entries in the database and for allowing one of selecting to create a new business rule and selecting to modify an existing business rule.

37. The application/web server for implementing a business application system of claim 31 , wherein the at least one non-programmatic interactive user page includes an expression builder page expressing data of the business rule as an expression having at least one symbol that is to be resolved when an instance of the business rule is one of created and executed.

38. The application/web server for implementing a business application system of claim 37 , wherein data for each business rule includes schedule data, the schedule data selectively includes a schedule expressed as an expression via the expression builder page.

39. The application/web server for implementing a business application system of claim 37 , wherein data for each business rule includes action data, the action data selectively includes action data expressed as an expression via the expression builder page.

40. The application/web server for implementing a business application system of claim 37 , wherein data for each business rule includes condition data, the condition data selectively includes a condition expressed as an expression via the expression builder page.

41. A system for processing business rules and changing business processes associated with a business application, comprising:

means for writing an event job into a job queue for each occurrence of an event having at least one business rule based on occurrence thereof;

means for creating a business rule instance for each business rule corresponding to the event job;

means for testing conditions of each business instance;

means for writing the business rule instance into the job queue corresponding to each business instance for which the conditions testing succeeds;

means for deleting the event job from the job queue;

means for executing the business rule instance; and

means for deleting the business rule instance from the job queue;

wherein the business rules can be selectively enabled, conditioned, calibrated, and disabled via a content page provided by a server at a client browser.

42. The system for processing business rules of claim 41 , further comprising means for scheduling the business rule instance, wherein said executing the business rule instance is according to said scheduling.

43. The system for processing business rules of claim 42 , wherein said scheduling the business rule instance is selected from the group consisting of delaying job execution, rescheduling job execution, scheduling repeat executions, and suspending execution.

44. The system for processing business rules of claim 41 , wherein said executing the business rule instance comprises:

testing conditions of the business rule instance;

if the instance conditions testing fails, deleting the business rule instance from the job queue; and

if the instance conditions testing succeeds:

executing actions specified by the business rule instance, and

deleting the business rule instance from the job queue.

45. The system for processing business rules of claim 44 , wherein said executing actions specified by the business rule instance comprises:

scheduling execution using an execution schedule as determined according to scheduling data of the business rule instance; and

executing actions specified by the business rule instance according to the execution schedule.

46. The system for processing business rules of claim 41 , further comprising means for resolving embedded pre-queue symbols in expressions of the event job corresponding to the business rule.

47. The system for processing business rules of claim 46 , wherein said resolving embedded pre-queue symbols in expressions of the event job comprises:

parsing the expression hierarchically; and

resolving the symbols in a recursive manner.

48. The system for processing business rules of claim 41 , further comprising means for resolving embedded post-queue symbols in expressions of the business rule instance.

49. The system for processing business rules of claim 48 , wherein said resolving embedded post-queue symbols in expressions of the business rule instance comprises:

parsing the expression hierarchically; and

resolving the symbols in a recursive manner.

50. The system for processing business rules of claim 41 , further comprising:

means for monitoring for incoming notification events; and

means for reporting the incoming notification events.

51. The system for processing business rules of claim 41 , wherein said executing the business rule instance includes selectively transmitting an outgoing notification.

52. The system for processing business rules of claim 51 , wherein the outgoing notification is selected from the group consisting of mail, pager notification, Telalert, and NT network message notifications.

53. A business application system for implementing business rules and changing business processes associated with a business application, comprising:

a job queue module for maintaining a job queue and processing jobs in the job queue; and

a notification module in communication with said job queue module for monitoring for incoming notification events and reporting the incoming notification events to the job queue module,

wherein said job queue module writes an event job corresponding to a business rule to the job queue upon receiving an incoming notification event that matches a triggering event of the business rule,

said job queue module tests conditions of the business rule corresponding to the event job, deletes the event job from the job queue, and, if conditions of the business rule are met, writes a business rule instance to the job queue, and

said job queue module processes the business rule instance and deletes the business rule instance from the job queue;

wherein the business rules can be selectively enabled, conditioned, calibrated, and disabled via a content page provided by a server at a client browser.

54. The business application system of claim 53 , wherein the job queue module processes the business rule instance by scheduling the business rule instance and executing the business rule instance is according to the scheduling.

55. The business application system of claim 54 , wherein the scheduling by the job queue module is selected from the group consisting of delaying job execution, rescheduling job execution, scheduling repeat executions, and suspending execution.

56. The business application system of claim 53 , wherein the job queue module processes the business rule instance includes testing conditions of the business rule instance, executing actions specified by the business rule instance if the conditions testing succeeds, and deleting the business rule instance form the job queue.

57. The business application system of claim 56 , wherein the job queue module executes actions specified by the business rule instance includes scheduling execution according to scheduling data of the business rule instance and executing actions specified by the business rule instance according to the execution scheduling.

58. The business application system of claim 53 , wherein the job queue module resolves any embedded pre-queue symbols in expressions of the event job corresponding to the business rule.

59. The business application system of claim 58 , wherein the job queue module resolves embedded pre-queue symbols by parsing the expression hierarchically and resolving the symbols in a recursive manner.

60. The business application system of claim 53 , wherein the job queue resolves any embedded post-queue symbols in expressions of the business rule instance.

61. The business application system of claim 60 , wherein the job queue module resolves embedded post-queue symbols by parsing the expression hierarchically and resolving the symbols in a recursive manner.

62. The business application system of claim 53 , wherein the notification module monitors for incoming notification events and reports the incoming notification events to the job queue module.

63. The business application system of claim 53 , wherein the job queue module processes the business rule instance by selectively transmitting an outgoing notification to the notification module.

64. The business application system of claim 63 , wherein the notification module processes an outgoing notification task received from the job queue module by sending out a notification selected from the group consisting of mail, pager notification, Telalert and NT network message notifications.

Assignments (10)
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
TERMINATION AND RELEASE OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS Recorded Apr 3, 2020
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: CLEARWIRE LEGACY LLC
Reel/Frame 052313/0172 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
MERGER Recorded Sep 13, 2007
From: NETWORKS ASSOCIATES TECHNOLOGY, INC.
To: MCAFEE, INC.
Reel/Frame 019825/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2001
From: GRINDROD, GEOFF; SLAVOS, OTO; KODALI, SAIGIRIDHAR
To: NETWORKS ASSOCIATES TECHNOLOGY, INC.
Reel/Frame 011816/0657 →