← Back to Patent Explorer
US6115646A Expired / Lapsed US ⏱️ 0.0 years remaining

Dynamic and generic process automation system

Assignee: Nortel Networks Ltd
•
Filing: 1997-12-18
•
Granted: 2000-09-05
•
Expires: 2017-12-18
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract GPAE is a dynamic and generic object-oriented process automation engine that provides workflow management (WFM) services in a heterogeneous distributed computing environment. This invention decouples process definitions, run-time process management, and process execution agents. The system consists of three major parts: (a) a build time part used to capture and store process definitions, and to request the enactment of a process; (b) a run time part used to schedule, execute, and monitor the requested process; (c) a CORBA bus to plug-in software applications needed to execute processes, and to allow interactions among the system components. This GPAE invention, based on CORBA, and event-driven and constraint propagation models, provides near optimal scheduling and resource allocation schemes. This invention is generic, scalable, flexible, and enables the process automation in a distributed heterogeneous platform environment, while sharing global resources and services efficiently.

Inventors

  • 👤 Sergio Adrian Fiszman
  • 👤 Jason Benwell
  • 👤 Ari Sodhi

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 10:59
CPC Classifications
G; G06; G06Q; G06Q10/00; G06Q10/10; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/465

Claims Analysis

Total Claims: 17
Claim 1
Independent Claim 223 words
A process automation system for controlling the execution of processes on a plurality of processing nodes each having processing agents associated therewith, the system comprising a GPAE (generic process automation engine) and an ORB (object request broker) bus connected to the plurality of processing nodes, the GPAE having: a) a build time part for creating and storing at least one process definition identifying a logical sequence of work items, pre-conditions and post-conditions for the execution of work items, and propagation rules for propagating outputs of work items to inputs of other work items, and for creating and storing a request to create a process instance for a particular process definition; b) a run time part comprising process instance servers for coordinating the enactment of the work items forming part of the process definitions and a scheduler for scheduling each work item forming part of the process definition either for execution at a given time and by a particular processing agent on a particular one of the processing nodes or for execution by a human, the scheduler using constraint propagation logic; wherein the ORB is a CORBA bus, and the process instance servers are CORBA Process Servers that contain a set of process instance objects that control the execution of the work items forming part of the process definition for the relevant process instance.
Claim 2
Dependent Claim 223 words
A process automation system for controlling the execution of processes on a plurality of processing nodes each having processing agents associated therewith, the system comprising a GPAE (generic process automation engine) and an ORB (object request broker) bus connected to the plurality of processing nodes, the GPAE having: a) a build time part for creating and storing at least one process definition identifying a logical sequence of work items, pre-conditions and post-conditions for the execution of work items, and propagation rules for propagating outputs of work items to inputs of other work items, and for creating and storing a request to create a process instance for a particular process definition; b) a run time part comprising process instance servers for coordinating the enactment of the work items forming part of the process definitions and a scheduler for scheduling each work item forming part of the process definition either for execution at a given time and by a particular processing agent on a particular one of the processing nodes or for execution by a human, the scheduler using constraint propagation logic; wherein the ORB is a CORBA bus, and the process instance servers are CORBA Process Servers that contain a set of process instance objects that control the execution of the work items forming part of the process definition for the relevant process instance.
Claim 3
Dependent Claim 38 words
A system according to claim 1 wherein the build time part stores process definitions in a persistent catalog, and wherein the process definitions are defined using an extension of the WfMC (Workflow Management Coalition) process definition language (WPDL).
Claim 4
Dependent Claim 29 words
A system according to claim 1 wherein work items to be executed by processing nodes are defined by activity definitions which are defined as objects in a persistent catalog.
Claim 5
Dependent Claim 23 words
A system according to claim 3 wherein a new process definition can be created by composing versions of existing activity or process definitions.
Claim 6
Dependent Claim 53 words
A system according to claim 3 wherein the termination of an activity becomes an event that triggers a process instance to evaluate the conditions needed to execute the next set of activities in the process definition, and interact with the scheduler to determine where and when to execute the next set of activities.
Claim 7
Dependent Claim 37 words
A system according to claim 1 wherein the multi-threaded scheduler creates a near optimal schedule in real time and considers the constraints of a set of concurrent activities, and the available resources, according to resource utilization goals.
Claim 8
Dependent Claim 17 words
A system according to claim 6 wherein the resource utilization goals may be redefined during run time.
Claim 9
Dependent Claim 17 words
A system according to claim 6 wherein the utilization goals are stored in a persistent goals catalog.
Claim 10
Dependent Claim 64 words
A system according to claim 1 further comprising a persistent store for operational data, historical data, and system state information, the operational data being used to determine further process efficiencies and to report progress, the historical data being used for root cause analysis and to audit past requests, and the system state information being used to recover GPAE from system failures and network failures.
Claim 11
Dependent Claim 32 words
A system according to claim 1 further comprising a query server which answers queries related to buildtime information (i.e., process and activity definitions) and runtime information (e.g., progress of processes' execution states).
Claim 12
Dependent Claim 26 words
A system according to claim 1 further comprising means for notifying an outcome of runtime events to interested parties by extending the CORBA's event service model.
Claim 13
Dependent Claim 23 words
A system according to claim 11 wherein the notification is done by displaying tasks to be completed by humans in a worklist menu.
Claim 14
Dependent Claim 17 words
A system according to claim 1 wherein work items requiring human execution are multicasted to worklist menus.
Claim 15
Dependent Claim 27 words
A system according to claim 1 wherein a plurality of GPAE systems, distributed in strategic geographical locations, are CORBA connected to share global processes, services and resources.
Claim 16
Dependent Claim 192 words
A process automation system for controlling the execution of processes on a plurality of processing nodes each having processing agents associated therewith, the system comprising a GPAE (generic process automation engine) and an ORB (object request broker) bus connected to the plurality of processing nodes, the GPAE having: a) a build time part for creating and storing at least one process definition identifying a logical sequence of work items, pre-conditions and post-conditions for the execution of work items, and propagation rules for propagating outputs of work items to inputs of other work items, and for creating and storing a request to create a process instance for a particular process definition; b) a run time part comprising process instance servers for coordinating the enactment of the work items forming part of the process definitions and a scheduler for scheduling each work item forming part of the process definition either for execution at a given time and by a particular processing agent on a particular one of the processing nodes or for execution by a human, the scheduler using constraint propagation logic; wherein processing agents may be added, deleted or changed during run time.
Claim 17
Dependent Claim 192 words
A process automation system for controlling the execution of processes on a plurality of processing nodes each having processing agents associated therewith, the system comprising a GPAE (generic process automation engine) and an ORB (object request broker) bus connected to the plurality of processing nodes, the GPAE having: a) a build time part for creating and storing at least one process definition identifying a logical sequence of work items, pre-conditions and post-conditions for the execution of work items, and propagation rules for propagating outputs of work items to inputs of other work items, and for creating and storing a request to create a process instance for a particular process definition; b) a run time part comprising process instance servers for coordinating the enactment of the work items forming part of the process definitions and a scheduler for scheduling each work item forming part of the process definition either for execution at a given time and by a particular processing agent on a particular one of the processing nodes or for execution by a human, the scheduler using constraint propagation logic; wherein processing agents may be added, deleted or changed during run time.

References Cited (Backward Citations)

US5490266A Cited
US5301320A Cited
US5627764A Cited
US5581691A Cited
US5535322A Cited
US5630069A Cited
US5550967A Cited
US5893128A Cited
US5490097A Cited
US5659716A Cited
US5675745A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-09-05 2004-03-06 2004-09-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-09-05 2008-03-06 2008-09-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-09-05 2012-03-06 2012-09-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag