IP Library Granted Patent US 7,822,658
Granted Patent B2
US 7,822,658 · App. 10/164,194 · Granted Oct 26, 2010

Dynamic prioritization of activities

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 7,822,658
App. No.
10/164,194
Granted
Oct 26, 2010
Kind
B2
Abstract

A system comprises a first store of process instance data, a second store of data including predictions and statistics respectively corresponding to the process instance data, and a dynamic prioritization system configured to selectively access data in the first store and the second store and to estimate a cost of a process instance responsive to the accessing, wherein process instance node priorities are adjusted responsive to the estimate. A method comprises providing a first store of process instance data, providing a second store of data including predictions and statistics respectively corresponding to the process instance data, selectively accessing data in the first store and the second store, estimating a cost of a process instance responsive to the accessing and selectively adjusting process instance node priorities using a dynamic prioritization system responsive to the estimating.

Claims (37)

1. A system comprising:

a processor;

a first store of process instance data, including process definitions of corresponding process instances and identification of nodes within the process instances;

a second store of data including prediction data and statistics data respectively corresponding to the process instance data, wherein the prediction data is selected from the group consisting of: data indicating amounts of time predicted to execute the corresponding process instances, and data indicating amounts of time predicted to execute corresponding nodes in the process instances; and

a dynamic prioritization system executable on the processor and configured to access data in the first store and the second store and to dynamically prioritize order of execution of at least one of: (1) pending process instances and (2) nodes within the pending process instances, responsive to accessing the data in the first store and second store.

2. A system in accordance with claim 1 , further comprising a worklist manager having a queue that stores the pending process instances in an ordered priority sequence of execution by corresponding resources, wherein the ordered priority sequence is according to the dynamic prioritization determined by the dynamic prioritization system.

3. A system in accordance with claim 2 , wherein the dynamic prioritization system is further configured to estimate costs of the pending process instances based on at least one of the process instance data in the first store and the prediction data and statistics data in the second store.

4. A system in accordance with claim 3 , wherein the dynamic prioritization determined by the dynamic prioritization system is based on the costs estimated for said pending process instances.

5. A system in accordance with claim 1 , wherein the prediction data in the second store includes data predicting a next node to be executed in a particular one of the process instances.

6. A system in accordance with claim 1 , wherein the statistics data in the second store includes one or more of: average execution time for a first type of process instance; average execution time for a first type of node; total execution time for a second type of process instance; and total execution time for a second type of node.

7. A system in accordance with claim 1 , wherein the process instance data includes at least one of: process instance input parameters and process instance output parameters.

8. A system in accordance with claim 1 , wherein the prediction data in the second store further includes a prediction of an execution path of a particular pending process instance.

9. A system in accordance with claim 1 , wherein the prediction data in the second store further includes one or more of: a prediction of how many process instances will be activated, and a prediction of how many work items will be assigned to a given resource at a future time.

10. A system in accordance with claim 1 , wherein the dynamic prioritization system is configured to provide the highest priority nodes within the pending process instances to corresponding resources.

11. A method comprising:

providing a first store of process instance data, including process definitions of corresponding process instances and identification of nodes within the process instances;

providing a second store of data including prediction data and statistics data corresponding to the process instance data, wherein the prediction data is selected from the group consisting of: data indicating amounts of time predicted to execute the corresponding process instances, and data indicating amounts of time predicted to execute corresponding nodes in the process instances;

accessing the process instance data in the first store and the prediction data and statistics data in the second store; and

dynamically prioritizing order of execution of at least one of: (1) pending process instances and (2) nodes within the pending process instances, using a dynamic prioritization system executed by a processor, based on the data that was accessed from the first store and the second store.

12. A method in accordance with claim 11 , further comprising storing a queue that includes pending steps of the pending process instances in an ordered priority sequence of execution that is according to the dynamic prioritization determined by the dynamic prioritization system.

13. A method in accordance with claim 12 , further comprising estimating, by the dynamic prioritization system, costs of the pending steps of the pending process instances based on at least one of the process instance data in the first store and the prediction data and statistics data in the second store.

14. A method in accordance with claim 13 , further comprising selectively varying, by the dynamic prioritization system, the ordered priority sequence of execution of a plurality of the pending steps of the pending process instances based on the estimating.

15. A method in accordance with claim 14 , further comprising selectively passing at least a portion of a particular pending process instance to a resource responsive to a request based on the ordered priority sequence of execution.

16. A method in accordance with claim 14 , further comprising selectively passing, by the dynamic prioritization system, at least a portion of the pending process instance having highest priority in the ordered priority sequence of execution to a resource, responsive to a request.

17. A method in accordance with claim 11 , wherein the prediction data in the second store further includes a prediction of an execution path of a particular pending process instance.

18. A method in accordance with claim 11 , wherein the prediction data in the second store further includes one or more of: a prediction of how many process instances will be activated, and a prediction of how many work items will be assigned to a given resource at a future time.

19. A method in accordance with claim 11 , wherein the dynamic prioritization system provides the highest priority nodes within the pending process instances to applicable resources.

20. A system, comprising:

a first store of data related to execution of a process;

a second store of prediction data and statistics data related to execution of the process, wherein the prediction data is selected from the group consisting of: data indicating an amount of time predicted to execute the process, and data indicating amounts of time predicted to execute corresponding steps in the process;

a processor configured to:

compute a cost of a particular step within the process based on the prediction data and the statistics data accessed; and

selectively prioritize an order of executing the particular step based on the cost computed.

21. A system in accordance with claim 20 , further comprising a queue to store a plurality of processes, each of the plurality of processes having at least one step, wherein the processor is configured to selectively compute a cost for the at least one step of each of the plurality of processes.

22. A system in accordance with claim 21 , wherein the selectively prioritization is performed by selectively prioritizing the order of executing the at least one step of each of the plurality of processes based on the costs of the corresponding steps of the plurality of processes.

23. A system in accordance with claim 22 , wherein the processor is configured to further selectively provide at least one step to a resource responsive to a request in accordance with the prioritization of the order of executing the steps.

24. A system in accordance with claim 22 , wherein the processor is configured to further selectively push at least one step to a resource responsive to a schedule in accordance with the prioritization of the order of executing the steps.

Assignments (12)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 063546/0181) Recorded Jun 21, 2024
From: BARCLAYS BANK PLC
To: MICRO FOCUS LLC
Reel/Frame 067807/0076 →
SECURITY INTEREST Recorded Aug 30, 2023
From: MICRO FOCUS LLC
To: THE BANK OF NEW YORK MELLON
Reel/Frame 064760/0862 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0181 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0190 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0230 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →