Browse Prior Art Database

Recursive activity execution in workflow management systems

IP.com Disclosure Number: IPCOM000020713D
Original Publication Date: 2003-Dec-10
Included in the Prior Art Database: 2003-Dec-10
Document File: 2 page(s) / 42K

Publishing Venue

IBM

Abstract

A business process consists of a set of activities that are carried out in a particular order. An activity may either be carried out by a person or automatically by the system. Activities that are carried out by people have a staff query associated with them. This staff query defines who should perform the activity. When the process is being carried, this staff query is resolved to determine the appropriate person(s). In some cases, the same activity, for example approving some decision, has to be carried out by all members of a management chain. The number of people involved thus depends on the number of levels in the chain. Modeling this behavior using the typical constructs, such as a while loop, is cumbersome. It is proposed to extend the staff query with recursive specifications automatically solving this probelm.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 2

Recursive activity execution in workflow management systems

A business process (workflow) consists of a set of activities that are carried out in some order which is determined by control dependencies as well as the actual data that is being carried within the process. Workflow Management Systems have been developed to perform this task. An activity typically has an implementation associated with it; the implementation can be everything from a simple executable to a powerful Web Service. An activity, and obviously the associated implementation, may be carried out with or without human involvement. Activities that are carried out by people are called staff activities and have a staff query associated with them. This staff query specifies, typically in organizational terms, who should perform the activity. When the process is being carried out, the staff query is executed, which results in a list of people that potentially can perform the task. Each selected person receives the request for performing the activity as a work item in their personal work list. When the first person selects the work item, the work item is removed from the worklist of all other persons. After the user has finished the task, the work item is removed and navigation through the business process continues. A thorough discussion of workflow management systems and the handling of business processes including staff activities is described in Frank Leymann and Dieter Roller, Production Workflow: Concepts and Techniques, Prentice Hall, ISBN 0120217530.

    In many cases, in particular admistrative types of workflow, the same activity must be carried out by a set of people that are involved in some kind of hierarchical relationship. For example, the approval of a computer purchase may require that the complete management line up to the vice president of engineering need to sign off. It is obvious that the number of people that need to provide sign off depends on the level of the person requesting the computer purchase. If, for example, the request provide comes from the personal assistent of the vice president, just the vice president has to sign off; if the request comes from a first line manager, then all managers s/he reports to up to the vice president have to provide sign off. Modeling this behavior using a while loop is extremely cumbersome. In the case of the computer puchase, one has to test in the while loop whether the last employee that signed off the request was a vice president or not. It is proposed that extensions to the staff query can solve this much more naturally.

    This type of processing is recursive in nature. Recursion is usually described using...