Framework to model and execute business processes within a collaborative environment
First Claim
1. A method of executing a project within a collaborative environment in a relational database system comprising:
- creating at least one task type, each task type modeling a task in a business process;
creating at least one tasklist template, each tasklist template comprising an ordered set of task types connected to each other via task associations;
detecting an occurrence of a tasklist trigger event of a child project;
associating a task list template with each child project of the project template corresponding to a resource associated with the tasklist trigger event;
automatically invoking execution of the tasklist template;
creating a parent workspace in the system for executing the parent project and at least one child workspace in the system for each child project of the parent project as defined by the task list template, wherein each child workspace is isolated from the parent workspace and configured to operate on data content of the parent workspace concurrently with any other child workspace and independently of any other child workspace;
executing each task type of each child project defined by the task list template in a respective child project task workspace each task type being executed in an isolated environment independent of any other task type;
merging data content of each child project task workspace back to the child project workspace at any point during execution of a respective task;
making the data content of each task workspace merged back to the child project workspace from which the task was created visible to all other child workspaces of the child project workspace at the time the data content is merged; and
merging a content of each child workspace back to the parent workspace in the system.
2 Assignments
0 Petitions
Accused Products
Abstract
A mechanism of specification of business process templates, to capture commonly performed business activities/workflows/projects within a business organization and encourage reuse of best practices. Long transaction workspaces based business process template execution mechanism are presented, which have several advantages over existing business process execution mechanisms in web collaboration frameworks. This execution approach provides support for an isolated environment for business process execution. This isolates the changes made on different resources while executing a business process from the external world until the business process completes. It enables the ability to concurrently manipulate same resources in different components of a business process, and later resolve conflicts if any and merge the different views of the same resource manipulated by different components of a business process. It also enables easy and effective mechanisms for error recovery and rollback during business process execution.
136 Citations
38 Claims
-
1. A method of executing a project within a collaborative environment in a relational database system comprising:
-
creating at least one task type, each task type modeling a task in a business process; creating at least one tasklist template, each tasklist template comprising an ordered set of task types connected to each other via task associations; detecting an occurrence of a tasklist trigger event of a child project; associating a task list template with each child project of the project template corresponding to a resource associated with the tasklist trigger event; automatically invoking execution of the tasklist template; creating a parent workspace in the system for executing the parent project and at least one child workspace in the system for each child project of the parent project as defined by the task list template, wherein each child workspace is isolated from the parent workspace and configured to operate on data content of the parent workspace concurrently with any other child workspace and independently of any other child workspace; executing each task type of each child project defined by the task list template in a respective child project task workspace each task type being executed in an isolated environment independent of any other task type; merging data content of each child project task workspace back to the child project workspace at any point during execution of a respective task; making the data content of each task workspace merged back to the child project workspace from which the task was created visible to all other child workspaces of the child project workspace at the time the data content is merged; and merging a content of each child workspace back to the parent workspace in the system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 38)
-
-
12. A system comprising:
-
at least one processor for modeling and executing tasklists within a collaborative environment in a database system a workspace manager in the at least one processor configured to support workspaces in the database system for performing tasks and create a child workspace for each child project; a tasklist template manager in the at least one processor configured to model at least one tasklist, wherein each tasklist comprises one or more tasks to be performed in workspaces, each workspace configured to be isolated and independent from any other workspace; and a tasklist manager in the at least one processor configured to detect an occurrence of a tasklist trigger event of a child project, associate a stored tasklist template with the child project, and automatically invoke execution of the stored tasklist template using a set of workspaces in the database system, wherein the tasklist manager is configured to create a task workspace in the workspace manager for each task in the tasklist as modeled by the tasklist template and wherein the tasklist manager provides an isolated environment for task execution by executing each task within a respective task workspace and publishing data content of each task to the child workspace from the respective task workspace at any point during execution of the task, where any other task created within the child workspace can view data content published to the child workspace. - View Dependent Claims (13, 14, 15, 16, 17, 18, 37)
-
-
19. A computer program product stored in a memory comprising:
-
a computer useable medium having computer readable code means embodied therein for causing a computer to execute a project within a collaborative environment in a database system, the computer readable code means in the computer program product comprising; computer readable program code means for causing a computer to create a parent workspace in the database system for a parent project and at least one child workspace in the database system for each child project of the parent project, wherein each child workspace is isolated from the parent workspace and configured to operate on data content of the parent workspace concurrently with any other child workspace and independently of any other child workspace; computer readable program code means for causing a computer to create at least one task type, each task type modelling a task in a business process, and at least one tasklist template comprising an ordered set of tasks connected to each other via task associations; computer readable program code means for causing a computer to detect an occurrence of a tasklist trigger event of a child project and associate a task list template with the child project; computer readable program code means for causing a computer to automatically invoke execution of the associated tasklist template for each task of each child project in a respective child project task workspace, each task being executed in an isolated environment independent of any other task; computer readable program code means for causing a computer to merge data content from each child project task workspace back to the child project workspace at any point in time during execution of a respective task; computer readable program code means for causing a computer to make the data content of each task merged to the child workspace visible to all other child workspaces at the time the data content is merged; and computer readable program code means for causing a computer to merge a content of each child workspace back to the parent workspace.
-
-
20. An article of manufacture comprising:
-
a computer useable medium having computer readable code means embodied therein for causing a computer to execute a project within a collaborative environment in a database system, the computer readable code means in the computer program product comprising; computer readable program code means for causing a computer to create a parent workspace in the database system for a parent project and at least one child workspace in the database system for each child project of the parent project, wherein each child workspace is isolated from the parent workspace and configured to operate on data content of the parent workspace concurrently with any other child workspace and independently of any other child workspace; computer readable program code means for causing a computer to create at least one task type, each task type modelling a task in a business process, and at least one tasklist template comprising an ordered set of tasks connected to each other via task associations; computer readable program code means for causing a computer to detect an occurrence of a tasklist trigger event of a child project and associate a task list template with the child project; computer readable program code means for causing a computer to automatically invoke execution of the associated tasklist template for each task of each child project in a respective child project task workspace, each task being executed in an isolated environment independent of any other task; computer readable program code means for causing a computer to merge data content from each child project task workspace back to the child project workspace at any point in time during execution of a respective task; computer readable program code means for causing a computer to make the data content of each task merged to the child workspace visible to all other child workspaces at the time the data content is merged; and computer readable program code means for causing a computer to merge a content of each child workspace back to the parent workspace.
-
Specification