RE-USABLE DECLARATIVE WORKFLOW TEMPLATES
First Claim
1. A method for deploying workflows, the method comprising:
- storing a workflow template at a data storage system, the workflow template defining a workflow, the workflow implementing a business process of an enterprise, the workflow comprising a structured set of activities, each activity in the structured set of activities being a modular set of computer-executable instructions that when executed perform a task in the business process, the workflow template comprising a plurality of activity elements, each activity element in the plurality of activity elements indicating an activity in the structured set of activities, the structured set of activities including a customizable activity, the customizable activity having an input property, the plurality of activity elements including a customizable activity element indicating the customizable activity, the customizable activity element including an attribute associated with the input property of the customizable activity, the attribute specifying a variable name;
after storing the workflow template, storing a workflow customization table at the data storage system, the workflow customization table including an entry indicating data to be bound to the variable name;
after storing the workflow customization table, receiving, at a server computing system, a resource request from a client computing system;
in response to the resource request, automatically initializing, at the server computer system, a workflow instance, the workflow instance comprising the structured set of activities, the input property of the customizable activity bound to the data indicated by the entry in the workflow customization table;
after automatically initializing the workflow instance, automatically initiating, at the server computing system, execution of the workflow instance; and
during execution of the workflow instance, using, at the server computing system, data bound to the input property of the customizable activity to execute the customizable activity.
2 Assignments
0 Petitions
Accused Products
Abstract
A server computing system stores at least one workflow template and at least one workflow customization table. The workflow template includes activity elements that indicate activities included in the workflow. The activity elements include attributes associated with input properties of the indicated activities. At least one of the activity elements includes an attribute associated with an input property, the attribute specifying a variable name, not particular data. The workflow customization table includes an entry associating the variable name with particular data. When the server computing system initializes a workflow instance based on the workflow template, the server computing system binds the input property to the particular data specified by the workflow customization table. Thus, by storing different workflow customization tables, the same workflow template can be used to initialize workflow instances having different behavior.
122 Citations
20 Claims
-
1. A method for deploying workflows, the method comprising:
-
storing a workflow template at a data storage system, the workflow template defining a workflow, the workflow implementing a business process of an enterprise, the workflow comprising a structured set of activities, each activity in the structured set of activities being a modular set of computer-executable instructions that when executed perform a task in the business process, the workflow template comprising a plurality of activity elements, each activity element in the plurality of activity elements indicating an activity in the structured set of activities, the structured set of activities including a customizable activity, the customizable activity having an input property, the plurality of activity elements including a customizable activity element indicating the customizable activity, the customizable activity element including an attribute associated with the input property of the customizable activity, the attribute specifying a variable name; after storing the workflow template, storing a workflow customization table at the data storage system, the workflow customization table including an entry indicating data to be bound to the variable name; after storing the workflow customization table, receiving, at a server computing system, a resource request from a client computing system; in response to the resource request, automatically initializing, at the server computer system, a workflow instance, the workflow instance comprising the structured set of activities, the input property of the customizable activity bound to the data indicated by the entry in the workflow customization table; after automatically initializing the workflow instance, automatically initiating, at the server computing system, execution of the workflow instance; and during execution of the workflow instance, using, at the server computing system, data bound to the input property of the customizable activity to execute the customizable activity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. An electronic computing system comprising:
-
a processing unit; and a data storage system storing; a workflow template, the workflow template defining a workflow, the workflow implementing a business process of an enterprise, the workflow comprising a structured set of activities, each activity in the structured set of activities being a modular set of computer-executable instructions that when executed perform a task in the business process, the workflow template comprising a plurality of activity elements, each activity element in the plurality of activity elements indicating an activity in the structured set of activities, the structured set of activities including a customizable activity, the customizable activity having an input property, the plurality of activity elements including a customizable activity element indicating the customizable activity, the customizable activity element including an attribute associated with the input property of the customizable activity, the attribute specifying a variable name; a workflow customization table, the workflow customization table including an entry indicating data to be bound to the variable name; and computer-executable instructions that, when executed by the processing unit, cause the electronic computing system to; receive a resource request from a client computing system; in response to the resource request, automatically initialize a workflow instance, the workflow instance comprising the structured set of activities, the input property of the customizable activity bound to the data indicated by the entry in the workflow customization table; after automatically initializing the workflow instance, automatically initiate execution of the workflow instance; and during execution of the workflow instance, use data bound to the input property of the customizable activity to execute the customizable activity. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer-readable medium comprising computer-executable instructions that, when executed by a processing unit of an electronic computing system, cause the electronic computing system to:
-
display a graphic user interface (GUI), the GUI containing a plurality of available activity names, each available activity name in the plurality of available activity names being a name of an activity in a plurality of available activities, each activity in the plurality of available activities being available to be included in a workflow, the workflow implementing a business process of an enterprise, the workflow comprising a structured set of activities, each activity in the structured set of activities being a modular set of computer-executable instructions that when executed perform a task in the business process; receive activity selection input from a user via the GUI, the activity selection input indicating a selected available activity name in the plurality of available activity names, the selected activity name being a name of a selected activity in the plurality of available activities; in response to the activity selection input, display a natural language sentence in the GUI, the natural language sentence expressing a task performed when the selected activity is executed, the natural language sentence including an input feature, the input feature enabling the user to select particular data to be bound to an input property of the selected activity or to select a variable name; after displaying the natural language sentence, receive data selection input from the user via the input feature; after receiving the data selection input, determine whether the data selection input indicates that the user has selected particular data to be bound to the input property or a variable name; in response determining that the data selection input indicates that the user has selected particular data to be bound to the input property, automatically update a workflow template such that a plurality of activity elements in the workflow template includes a first activity element, each activity element in the plurality of activity elements indicating an activity in the structured set of activities, the first activity element indicating the selected activity, the first activity element including a first attribute, the first attribute associated with the input property of the selected activity, the first attribute specifying the particular data; in response to determining that the data selection input indicates that the user has selected the variable name, automatically update the workflow template such that the plurality of activity elements in the workflow template includes a second activity element, the second activity element indicating the selected activity, the second activity element including a second attribute, the second attribute associated with the input property of the selected activity, the second attribute specifying the variable name; store the workflow template at a data storage system; after storing the workflow template, store a workflow customization table at the data storage system, the workflow customization table including an entry indicating data to be bound to the variable name; after storing the workflow customization table, receive a resource request from a client computing system; in response to the resource request, automatically initialize a workflow instance, the workflow instance comprising the structured set of activities, the input property of the selected activity bound to the data indicated by the entry in the workflow customization table; after automatically initializing the workflow instance, automatically initiate execution of the workflow instance; and during execution of the workflow instance, use data bound to the input property of the selected activity to execute the selected activity.
-
Specification