Browse Prior Art Database

Parallel Execution of Parallel Paths in WFMS

IP.com Disclosure Number: IPCOM000014729D
Original Publication Date: 2000-Apr-01
Included in the Prior Art Database: 2003-Jun-20
Document File: 8 page(s) / 53K

Publishing Venue

IBM

Abstract

1 Introduction

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 25% of the total text.

Page 1 of 8

Parallel Execution of Parallel Paths in WFMS

1 Introduction

    Workflow management systems support the definition and
execution of business processes.

    The major constructs in drawing processes are activities and
control connectors. The activities describe the tasks to be
performed, and the control connectors describe the potential

1sequence in which the activities are to be carried out. Figure 1
shows schematically the structure of such a process graph.

A1

A2 A3

A4

p12 p13

Subprocess

Figure 1 Process Model

    Activities are represented as named circles; the name
typically describes the purpose of the activity. Activities come
in various flavors to address the different tasks that may need
to be performed. They may have different activity implementations
to meet these diverse needs. Program activities are performed by
an assigned program, process activities are performed by another
process, and blocks implement a macro with a built-in do-until
loop.

    Control connectors are represented as arrows; the head of
the arrow describes the direction in which the flow of control is
moving through the process. The activity where the control
connector starts is called the source activity; where it ends is
called the target activity. When more than one control connector
leaves an activity, this indicates potentially parallel work.

    As shown in figure 1, each of the control connectors is
associated with a Boolean predicate; p12, for example, is such a
predicate associated with the control connector between A1 and
A2. This Boolean predicate is called transition condition. The
condition is stated as a boolean expression where the variables
within the expression are fields in the process input container
and the containers of activities.

When the transition condition of a control connector

1

ooo

p24

Block

p35

p45

A5

ooo ooo

[This page contains 1 picture or other non-text object]

Page 2 of 8

evaluates to true, the flow of control follows this control
connector to the target activity. When the transition condition
of a control connector evaluates to false, the flow of control
does not follow this control connector. In this case, if the
target activity is not a join activity, it is not carried out and
all outgoing control connectors of the target activity evaluate
to false.

    Workflow management systems typically distinguish between
two components: the navigation engine that traverses the process
graph and the program executor that launches the activity
implementations associated with the individual activities.

    Communication between the navigator and the process executor
is by some communication mechanism. MQSeries Workflow, for
example, uses a message queuing system for communication. When
the navigator has found an activity to be carried out, it sends
an appropriate request to the program executor. When the program
executor has finished, it sends an appropriate completion request
the navigator, who then tries to locates the next activities to
be carried out.

2 Problem Statement

    The navigation engi...