Patent ID: 8880591

Claim:
A workflow management system comprising: a database for storing one or more workflow plans, at least one workflow plan consisting of a plurality of events, actions, and/or user actions, wherein dataflow branching within the at least one workflow plan is defined by results codes returned by each event, action, and/or user action during execution of the workflow plan; an event engine, executed by one or more processors, that monitors events generated by external systems and/or users connected to the workflow management system and selects one or more of the stored workflow plans for execution based on monitored events; a plan engine, executed by the one or more processors, for executing a workflow plan that includes user actions to be performed asynchronously by a user as part of the workflow plan and at least one event, or action to be performed automatically, wherein the plan engine utilizes result codes returned by each event, action, and/or user action to determine dataflow branching within the at least one workflow plan, and wherein the plan engine stores outputs provided by executed events, actions, and/or user actions; a pending user action database that stores pending user actions added to the database in response to execution of the workflow plan that includes user actions, and removes pending user actions from the database in response to a user completing a user action; and a portal engine that communicates with the plan engine and a user via an external user interface, wherein the portal engine receives requests for pending user actions from the user, provides pending user actions retrieved from the pending user action database in response to a received request, and receives completed user actions from the user via the external user interface.