Pageflows

A pageflow is a specialized version of a normal business process that can be used to provide an animated user interface - a sequence of forms rather than just a single form - for a single work item to the same user.

A pageflow process can also include other activities - such as web service or database calls, scripts and conditional logic - which can be used to drive the interaction with the user. Pageflows can also be chained together.

For example, an insurance company process includes a user task to capture claim details from a customer. Instead of a form, the process designer creates a pageflow and associates it with the user task. The pageflow process:

  • presents an initial form which allows the user to enter the claimant’s policy number.
  • calls a policy database to obtain the policy details.
  • presents a second form to the user which displays the policy details and allows them to continue with the remaining claim information. (The pageflow would most likely contain an extended sequence of forms, rather than just the two used in this simplified example.)
    Note: The process designer defines forms for the Get Policy Number and Get Claim Details user tasks in the pageflow process, in the same way as they would define a form for a business process.

At runtime, when a user opens the Capture Claim Details work item, TIBCO ActiveMatrix BPM runs the Capture Claim pageflow process. The user sees the Get Policy Number and Get Claim Details forms as a continuous dialogue - the second form is displayed as soon as they submit the first one. They do not have to open separate work items from their work list, and there is no possibility of the forms being handled by different users.

When the user submits the Get Claim Details work item, the pageflow process completes and control returns to the main business process, which then proceeds to the Capture Initial Reserve script step.

Note: Unlike a normal business process, a pageflow process is stateless. If the process is not completed in full, any data set earlier in the process is lost. In the example above, if the user chose to cancel the Get Claim Details form, the data entered into the Get Policy Number form and retrieved from the Get Policy Details task would be lost.

Using Sticky Sessions with Pageflows

Pageflows are in-memory processes. When a pageflow is started, the state of the pageflow instance is cached, in memory, on the node where the pageflow is being executed. Subsequent calls to the pageflow must be routed through the same node for successful execution of the pageflow. Therefore, if you are operating in a distributed BPM system, you must use sticky sessions on a load balancer to ensure that all subsequent calls to a pageflow are routed to the same node.

For additional information, see "Load Balancer" in the TIBCO ActiveMatrix BPM Performance Tuning Guide.