Development framework for case and workflow systems
First Claim
1. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
- a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the subset of the software objects via the database management system, storing case information within the workflow processing framework; and
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user.
3 Assignments
0 Petitions
Accused Products
Abstract
A workflow processing framework provides common objects and business processes for the creation of an enterprise-wide workflow processing system. Conventional workflow, database and other platforms are accessed using standardized protocols. The use of common objects providing robust functionality while being insulated from the specific platforms used to implement the workflow processing system enable the common objects to be reused to perform many functions in many different lines of business without modification. If necessary, foundation objects are written to utilize the existing platforms more fully than permitted by standardized protocols. The business processes are generalized as much as possible, but are customized as required to fit the enterprise environment.
-
Citations
25 Claims
-
1. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the subset of the software objects via the database management system, storing case information within the workflow processing framework; and
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
2. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database, accessed by a subset of said software objects, defining work taxonomy and work steps for workflow processing; and
a workflow engine used by said set of software objects and the subset of said software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, the work step divisions segregating work responsive to work characteristics analyzed according to work step rules, wherein the work step divisions correspond to component processes defined by the work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user.
-
-
3. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions, wherein said software objects comprise common objects that are implementation independent and foundation objects;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the subset of the software objects via the database management system, storing case information within the workflow processing framework; and
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, wherein the foundation objects provide communication between the common objects and said workflow engine, the work step divisions correspond to component processes defined by work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user. - View Dependent Claims (4, 5)
-
-
6. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the subset of the software objects via the database management system, storing case information within the workflow processing framework; and
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, wherein said first database and said workflow engine are accessed by the subset of said software objects to generate a prioritized worklist each time a new session is started by a user, and where the subset of said software objects used to generate the prioritized worklist can invoke a prefetch object utilizing program code to perform a prefetch operation having an enumerated type to determine components of the case information to be. prefetched from said second database and not specifying in the program code of the prefetch object what format of data is involved in the prefetch operation, said workflow processing framework defining work step divisions for at least one of the work steps, where the work step divisions for the at least one of the work steps are prioritized.
-
-
12. A method of developing a workflow processing system, comprising:
-
providing a set of software objects, each uniquely performing a corresponding function in the workflow processing system, and a set of process definitions, accessed by a subset of the software objects;
providing a database management system, comprising;
a first database, accessed by a subset of the software objects via the database management system, defining work type and work steps for workflow processing; and
a second database, accessed by the software objects via the database management system, storing case information within the workflow processing system;
utilizing a workflow engine to modify the process definitions which correspond to work types and work steps for workflow processing, wherein the workflow engine is utilized by said workflow processing system in combination with said database management system to perform case processing; and
defining work step divisions using the workflow processing system for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, the work step divisions for the at least one of the work steps are prioritized when presented to a user, and the workflow processing system is supported by the workflow engine and the database management system. - View Dependent Claims (13, 14, 15, 16)
wherein said modifying comprises configuring the tables accessed by the subset of the software objected unchanged during said generating. -
14. The method as recited in claim 13, wherein the tables comprise an event process field map table to pre-fill work object fields from case data defining a work type for each work object in the workflow processing system without modifying program code.
-
15. The method as recited in claim 12, further comprising providing customizable user interfaces, separate from the software objects, to perform functions unique to the workflow processing system produced by said generating.
-
16. The method as recited in claim 15, further comprising providing at least one rules processor for assigning work.
-
-
17. A computer system programmed to generate a workflow processing system, comprising:
-
a memory unit storing a set of software objects, each uniquely performing a corresponding function in the workflow processing system, and a set of process definitions, accessed by a subset of the software objects in a database management system, comprising;
a first database, accessed by a subset of the software objects via the database management system, defining work type and work steps for workflow processing; and
a second database, accessed by the software objects via the database management system, storing case information within the workflow processing system;
a processing unit, coupled to said memory unit, to execute the software objects utilizing a workflow engine and database management system accessing the process definitions, wherein the workflow engine is utilized by said workflow processing system in combination with said database management system to perform case processing; and
at least one input/output unit, coupled to said memory unit and said processing unit, to enter data stored by said processing unit in the process definitions of said memory unit to define work types and work steps for workflow processing, said workflow processing system defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user.
-
-
18. A workflow processing system, comprising:
-
a memory unit storing a set of software objects, each uniquely performing a corresponding function in said workflow processing system, a database management system, comprising;
a first database, accessed by a subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the software objects via the database management system, storing within said workflow processing system;
at least one input/output unit, coupled to said memory unit, to enter and retrieve data stored in the first and second databases of said memory unit; and
a processing unit, coupled to said memory unit and to said at least one input/output unit, to execute the software objects utilizing a workflow engine and the database management system and update the case information in the second database based on the work type and work steps in the first database, said workflow processing system defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, the work step divisions for the at least one of the work steps are prioritized when presented to a user, and said workflow engine is utilized by said workflow processing system in combination with said database management system to perform case processing.
-
-
19. At least one computer program, embodied on a computer-readable medium, to create a workflow processing system, comprising:
-
a set of software objects, each uniquely performing a corresponding function in the workflow processing system;
a database management system, accessed by a subset of the software objects, comprising;
a first database, accessed by a subset of the software objects via the database management system, defining work type and work steps for workflow processing; and
a second database, accessed by the software objects via the database management system, storing within said workflow processing system;
a workflow engine defining a base workflow process flow utilized by said set of software objects and the subset of the software objects to perform the workflow processing, wherein said workflow engine is utilized by said workflow processing system in combination with said database management system to perform case processing; and
select graphical user interface modules, said workflow processing system defining the work types and the work;
steps that correspond to the base workflow process flow and defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules, and the work step divisions for the at least one of the work step r prioritized when presented to a user.- View Dependent Claims (20)
-
-
21. The at least one computer program as recited in claim 30, wherein the prefetch object is a multi-threaded object operating in a producer-consumer environment, using semaphores, threads, and class member variables to keep track of current and next case objects, comprising
a consumer thread to obtain a current case object from a work list, and a producer thread, executing as long as the prefetch object exists in memory, to retrieve a next available case object when the next case object is null and, when the next case object exists, to wait until the current case object is retrieved into processing by the consumer thread before retrieving the next available case object.
-
22. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work type and work steps for workflow processing, and a second database, accessed by the subset of the software objects via the database management system, storing case information within said workflow processing framework;
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, the work step divisions segregating work responsive to work characteristics analyzed according to work step rules, wherein the work step divisions correspond to component processes defined by the work step rules, and the work step divisions for the at least one of the work steps are prioritized when presented to a user; and
at least one rules processor building cases or processing existing cases by organizing data entered or stored in the second database, creating an event in response to the data, generating a work item in response to the event, and assigning work to place each of the cases in a work step division depending on a definition of a corresponding work step.
-
-
23. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database management system, accessed by a subset of the software objects, defining work taxonomy and work steps for workflow processing, said system comprising;
a first database, accessed by the subset of the software objects via the database management system, defining work types and work steps for workflow processing, a second database, accessed by the subset of the software objects via the database management system, storing case information within the workflow processing framework; and
a workflow engine utilized by said set of software objects and the subset of the software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database management system to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, wherein the work step divisions correspond to component processes defined by work step rules and assigning a case to a work step division based on case data and the work step rules associated with the work step and assigning the case to a user based on work load computed using data in the second database and a work load factor in the first database when~the work step division is a user type.
-
-
24. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database, accessed by a subset of said software objects, defining work taxonomy and work steps for workflow processing; and
a workflow engine used by said set of software objects and the subset of said software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, the work step divisions segregating work responsive to work characteristics analyzed according to work step rules, wherein the work step divisions correspond to component processes defined by the work step rules, the work step divisions for the at least one of the work steps are prioritized when presented to a user, and said workflow processing framework enabling the user to define work steps without requiring coding changes to the subset of the software objects.
-
-
25. A workflow processing framework, scalable for use by a single department to an entire enterprise, comprising:
-
a set of software objects, each unique throughout the enterprise, to support corresponding business functions;
a database, accessed by a subset of said software objects, defining work taxonomy and work steps for workflow processing; and
a workflow engine used by said set of software objects and the subset of said software objects using the work taxonomy to perform the workflow processing and utilized by said workflow processing framework in combination with said database to perform case processing, said workflow processing framework defining work step divisions for at least one of the work steps, the work step divisions segregating work responsive to work characteristics analyzed according to work step rules, wherein the work step divisions correspond to component processes defined by the work step rules, said workflow processing framework enabling a user to select from a list of cases and reassign at least one case from the list or prompt the at least one case into the workflow to balance a workload.
-
Specification