IP Library › Granted Patent US 10,699,238
Granted Patent B2
US 10,699,238 · App. 16/122,254 · Granted Jun 30, 2020

Cross-domain multi-attribute hashed and weighted dynamic process prioritization

Inventors: Can P. Boyacigiller (Austin, TX); Swaminathan Chandrasekaran (Coppell, TX)
Assignee: International Business Machines Corporation
G06Q10/06393G06F16/00G06Q10/067G06Q10/0633
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 10,699,238
App. No.
16/122,254
Granted
Jun 30, 2020
Kind
B2
Abstract

A set of attributes are identified within a received input request of a workflow process. The attributes at least in part represent historical process performance of similar workflow processes. Each of the attributes are weighted into a weighted process prioritization data set based upon the historical workflow process performance. The input request is assigned to a process priority based upon the weighted process prioritization data set.

Claims (61)

1. A method, comprising:

identifying, by a process prioritization processor of a business process management (BPM) system within a received input request of a workflow process, by parsing the input request to obtain a plurality of cross-domain attributes that at least in part represent historical workflow process performance of similar workflow processes;

applying a hash function to the plurality of cross-domain attributes as a vector;

applying a weighting function, based upon the historical workflow process performance, to each hashed cross-domain attribute;

outputting from the weighting function, an enhanced hash table comprising key-value pairs with an associated cross-domain weight and said enhanced hash table is organized into an array of buckets, with each bucket having a priority and within each bucket, one or more workflows with similar weights representing an equivalence of processing priority;

assigning the input request to a nearest bucket in the array of buckets of the enhanced hash table based upon results of hashed, weighted and normalized vectors of the plurality of cross-domain attributes; and

instantiating a process to execute and perform processing of the input request at an assigned priority within the nearest bucket.

2. The method of claim 1 , where the input request is subject to at least one business-level requirement selected from a set consisting of a service level agreement (SLA) and a quality of service (QoS) associated with processing of the input request.

3. The method of claim 1 , where:

the plurality of cross-domain attributes represent at least one of fixed business-level service agreement attributes and adjustable real-time infrastructure processing capability attributes; and

further comprising adjusting a weighted process prioritization data set in response to a change to at least one of the adjustable real-time infrastructure processing capability attributes.

4. The method of claim 3 , further comprising:

evaluating real-time performance of processing of the input request relative to the fixed business-level service agreement attributes; and

increasing, as part of process starvation prevention, the weighted process prioritization data set in response to a reduced time remaining to fulfill at least one business-level requirement defined within at least one of the fixed business-level service agreement attributes.

5. The method of claim 1 , further comprising:

identifying at least one additional currently-in-process input request that comprises a similar set of hashed, weighted and normalized vectors; and

where assigning the input request to the nearest bucket in the array of buckets of the enhanced hash table based upon results of the hashed, weighted and normalized vectors of the plurality of cross-domain attributes comprises placing the input request into an active process category associated with the currently-in-process input request.

6. The method of claim 1 , where the plurality of cross-domain attributes of the input request further comprise attributes selected from a group consisting of an order due date, a product identifier, a service delivery date, a customer rank, an order amount, a site location, a target channel, a data encoding format, and a file size.

7. The method of claim 1 , where the plurality of cross-domain attributes of the input request that at least in part represent the historical process performance of the similar workflow processes comprise historical processing information selected from a group consisting of past performance of process/workflow, past performance of processing infrastructure, runtime infrastructure metrics, and key performance indicators (KPIs).

8. A system, comprising:

a memory; and

a process prioritization processor of a business process management (BPM) system programmed to:

identify, within the memory from a received input request of a workflow process, a plurality of cross-domain attributes from parsing the received input request, wherein the plurality of cross-domain attributes, that at least in part represent historical workflow process performance of similar workflow processes;

apply a hash function to the plurality of cross-domain attributes as a vector;

apply a weight function, based upon the historical workflow process performance, to each hashed cross-domain attribute;

output from the weight function, an enhanced hash table comprising key-value pairs with an associated cross-domain weight and said enhanced hash table is organized into an array of buckets, with each bucket having a priority and within each bucket, one or more workflows with similar weights representing an equivalence of processing priority;

assign the input request to a nearest bucket in the array of buckets of the enhanced hash table based upon results of hashed, weighted and normalized vectors of the plurality of cross-domain attributes; and

instantiate a process to execute and perform processing of the input request at an assigned priority within the nearest bucket.

9. The system of claim 8 , where the input request is subject to at least one business-level requirement selected from a set consisting of a service level agreement (SLA) and a quality of service (QoS) associated with processing of the input request.

10. The system of claim 8 , where:

the plurality of cross-domain attributes represent at least one of fixed business-level service agreement attributes and adjustable real-time infrastructure processing capability attributes; and

the processor is further programmed to adjust a weighted process prioritization data set in response to a change to at least one of the adjustable real-time infrastructure processing capability attributes.

11. The system of claim 10 , where the processor is further programmed to:

evaluate real-time performance of processing of the input request relative to the fixed business-level service agreement attributes; and

increase, as part of process starvation prevention, the weighted process prioritization data set in response to a reduced time remaining to fulfill at least one business-level requirement defined within at least one of the fixed business-level service agreement attributes.

12. The system of claim 8 , where the processor is further programmed to:

identify, within the memory, at least one additional currently-in-process input request that comprises a similar set of hashed, weighted and normalized vectors; and

where, in being programmed to assign the input request to the nearest bucket in the array of buckets of the enhanced hash table based upon results of the hashed, weighted and normalized vectors of the plurality of cross-domain attributes, the processor is programmed to place the input request into an active process category associated with the currently-in-process input request.

13. The system of claim 8 , where:

the plurality of attributes of the input request further comprise cross-domain attributes selected from a group consisting of an order due date, a product identifier, a service delivery date, a customer rank, an order amount, a site location, a target channel, a data encoding format, and a file size; and

the plurality of cross-domain attributes of the input request of that at least in part represent the historical process performance of the similar workflow processes comprise historical processing information selected from a group consisting of past performance of process/workflow, past performance of processing infrastructure, runtime infrastructure metrics, and key performance indicators (KPIs).

14. A computer program product, comprising:

a computer readable storage medium having computer readable program code embodied therewith, where the computer readable program code when executed on a computer of a business process management (BPM) system causes the computer to:

identify, within a received input request of a workflow process, a plurality of cross-domain attributes from parsing the received input request, wherein the plurality of cross-domain attributes, that at least in part represent historical workflow process performance of similar workflow processes;

apply a hash function to the plurality of cross-domain attributes as a vector;

apply a weight function, based upon the historical workflow process performance, to each hashed cross-domain attribute;

output from the weight function, an enhanced hash table comprising key-value pairs with an associated cross-domain weight and said enhanced hash table is organized into an array of buckets, with each bucket having a priority and within each bucket, one or more workflows with similar weights representing an equivalence of processing priority;

assign the input request to a nearest bucket in the array of buckets of the enhanced hash table based upon results of hashed, weighted and normalized vectors of the plurality of cross-domain attributes; and

instantiate a process to execute and perform processing of the input request at an assigned priority within the nearest bucket.

15. The computer program product of claim 14 , where the input request is subject to at least one business-level requirement selected from a set consisting of a service level agreement (SLA) and a quality of service (QoS) associated with processing of the input request.

16. The computer program product of claim 14 , where:

the plurality of cross-domain attributes represent at least one of fixed business-level service agreement attributes and adjustable real-time infrastructure processing capability attributes; and

the computer readable program code when executed on the computer further causes the computer to adjust a weighted process prioritization data set in response to a change to at least one of the adjustable real-time infrastructure processing capability attributes.

17. The computer program product of claim 16 , where the computer readable program code when executed on the computer further causes the computer to:

evaluate real-time performance of processing of the input request relative to the fixed business-level service agreement attributes; and

increase, as part of process starvation prevention, the weighted process prioritization data set in response to a reduced time remaining to fulfill at least one business-level requirement defined within at least one of the fixed business-level service agreement attributes.

18. The computer program product of claim 14 , where the computer readable program code when executed on the computer further causes the computer to:

identify at least one additional currently-in-process input request that comprises a similar set of hashed, weighted and normalized vectors; and

where, in causing the computer to assign the input request to the nearest bucket in the array of buckets of the enhanced hash table based upon results of the hashed, weighted and normalized vectors of the plurality of cross-domain attributes, the computer readable program code when executed on the computer causes the computer to place the input request into an active process category associated with the currently-in-process input request.

19. The computer program product of claim 14 , where the plurality of cross-domain attributes of the input request further comprise attributes selected from a group consisting of an order due date, a product identifier, a service delivery date, a customer rank, an order amount, a site location, a target channel, a data encoding format, and a file size.

20. The computer program product of claim 14 , where the plurality of cross-domain attributes of the input request that at least in part represent the historical process performance of the similar workflow processes comprise historical processing information selected from a group consisting of past performance of process/workflow, past performance of processing infrastructure, runtime infrastructure metrics, and key performance indicators (KPIs).

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2018
From: BOYACIGILLER, CAN P.; CHANDRASEKARAN, SWAMINATHAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 047016/0809 →
Continuity (3)
Continuation 15289067 · Oct 7, 2016
Continuation 14499131 · Sep 27, 2014
Related Publication 20190005430A1 · Jan 3, 2019