wftk tutorial - 05 Processes and tasks

The basic unit of workflow management is the process. (Yes, now we're getting to workflow!) A process can be a case in a customer service system, or a change request or bug report. It can be the proposal for a project, or an order in a shopping cart. It can have internal structure (a set of subprocesses) and a given system may well have different types of process -- but the unifying principle is that the process is whatever the system is built for.

The history of a given process is its enactment. The enactment is a log of all actions taken, and whatever else is deemed important enough to constitute the important history of the process, such as significant data changes, milestones, tasks completed, and so on.

The basic unit of action planning is the task. Where the enactment is the process's history, the tasks are its future, or at least its potential future. A task may be assigned to a user or group. Each task may itself be considered a process; the list of tasks is inherently hierarhical, because that reflects the organizational structure of the action taken in the system. There will be plenty of examples in this chapter.

There are variants of this basic setup. For instance, a project, in the wftk, is a repository which consists of a single process. We can also define a less organized repository which doesn't have processes at all, simply tasks. (Since tasks are processes, this is a pretty vague distinction; the point is that the wftk doesn't really care, if this is the best way to represent your own application.)

Tasks, once created, can be treated as tokens, and are subject not only to assignment, but to delegation. This is a low-level ad-hoc mechanism which can shortcut the necessity of building an entire subprocess to manage a task, if all a user needs to do is to delegate during sick leave, for example.

In the next chapter, we'll see that we can talk about potential tasks as well as the concrete tasks handled in this chapter. Don't worry, it'll make sense after we've dealt with it.

Here is an index to the information in this chapter:

(unresolved tag 05-index)

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.