BEA Logo BEA WebLogic Process Integrator Release 2.0

  BEA Home  |  Events  |  Solutions  |  Partners  |  Products  |  Services  |  Download  |  Developer Center  |  WebSUPPORT


   WebLogic Process Integrator Documentation   |   Using Studio   |   Previous Topic   |   Next Topic   |   Contents   |   Index

BEA WebLogic Process Integrator Overview


BEA WebLogic Process Integrator is a workflow management system that you use to automate business processes. A business process is a series of interconnected business activities that produce some desired result. A graphical representation of a business process is a workflow. You define and monitor workflows using the BEA WebLogic Process Integrator Studio, a BEA WebLogic Process Integrator client application.

The following sections provide an overview of workflow concepts and BEA WebLogic Process Integrator components:


Business Processes and Workflows

In order for a business organization to be effective, numerous discrete business activities must be performed in a sequence that produces the desired result. Business processes provide a way to structure and connect those business activities to achieve the desired result.

For example, in a Web-based ordering system, business activities must work in sequence so that orders are expedited and products are shipped in a timely manner. A business process provides the necessary structure to those business activities: an order is submitted, product availability is checked, customer credit is verified, the order is confirmed, and so on, until the product is shipped.

A business process, however, can be broken down into some basic elements, and the interaction between those elements can be represented graphically. In a typical business process, the basic elements are as follows:

We can represent the basic elements of a business process graphically using a workflow diagram such as the one shown in the following figure.

Figure 1-1 Workflow Diagram


In this workflow diagram, a start event, such as submitting an order, starts the business process. The order flows from task to task until it encounters a decision, which might cause the flow to change direction. Eventually, the flow reaches an end event, completing the process.

Workflow diagrams such as this one provide a graphical syntax that you can use to model business processes, and to describe how numerous discrete business activities should be sequenced to produce the desired result.


Workflow Automation and Management

In an e-business world, businesses must perform effectively at a rapid pace. To achieve this level of performance, many companies automate their business processes. For these companies, software performs most of the work in a business process.

An automated business process does not, however, entirely replace people with computers. People might still be involved in an automated process, either by making discretionary decisions or by handling exceptions or problems as they arise. Perhaps more importantly, people enable automated business processes by defining, implementing, and managing them. This raises human involvement in business processes to a higher level, enabling people to focus on design and optimization, leaving the execution of routine tasks to computers.

To automate their business processes, organizations use a workflow management system: a system that defines, manages, and executes business processes using software. The order in which business activities are executed in the process is driven by a computer representation of the process called a workflow. A workflow automates a business process by controlling the sequence of activities in the process, and by invoking the appropriate resources required by the various activities in the process. These resources might be software components that perform a required activity, or they might be people who respond to messages generated by the business process.

To achieve this level of workflow automation, a workflow management system provides support in three broad areas:

BEA WebLogic Process Integrator supports all three areas of workflow management. BEA WebLogic Process Integrator supports the execution of workflows using its run-time process engine, and the definition and monitoring of workflows with the BEA WebLogic Process Integrator Studio client application.


Business Organizations and Workflows

Businesses typically structure themselves hierarchically, starting with organizations. Each organization can represent a business function, such as accounting, human resources, or information technology, and might operate independently with separate management authority. Within each organization, a set of roles is defined. For example, in an information technology organization, the roles of manager, analyst, and programmer might be defined. For each role, specific individuals are assigned to perform the tasks within the role.

The following figure shows this kind of hierarchical business model.

Figure 1-2 Hierarchical Business Organization


BEA WebLogic Process Integrator workflows are organized around this kind of business model, with organizations defined first, followed by roles for each organization, and users for each role.

Organizations, roles, and users can be defined as follows:


Workflow Design and Integration

Theories of system design suggest that, ideally, systems should be designed using a top-down approach. In reality, systems are designed from both the top down and the bottom up. Both approaches are also used for the design of automated workflows, as the following figure shows.

Figure 1-3 Designing Workflows


In this design process, business analysts perform three steps:

  1. Define the main process flow.

  2. Identify the components required by the workflow.

  3. Integrate individual components into the overall design to produce the workflow template.

The template represents the flow of the business process with all of the necessary activities linked in the proper sequence. This workflow representation of the business process is not, however, fully automated at this point.

As we mention in Workflow Automation and Management automated workflows invoke software components to perform the activities required by a business process, such as checking the account balance of a particular customer. When invoking a software component, the workflow can also pass some information to the component to identify the customer, such as an account number. The software component performs some processing to retrieve the account balance, and then returns that information to the workflow.

The software components that the workflow invokes can be built specifically for the workflow being designed, or they can be existing applications invoked by the workflow. These software components are typically Enterprise JavaBeans (EJBs), Java classes in Java applications, or application executables. To make the workflow template fully automated, the template must be integrated with these software components, as the following figure shows.

Figure 1-4 Integrating a Workflow with Business Operations


In BEA WebLogic Process Integrator, the functions performed by EJBs and Java classes, and called by workflows, are called business operations. The information that is passed between workflows and software components are stored in entities called variables. You use the BEA WebLogic Process Integrator Studio to design workflow templates and integrate them with software applications by specifying the business operations invoked by a workflow, and the variables used by a workflow to store information.


BEA WebLogic Process Integrator Components

BEA WebLogic Process Integrator is a Java 2 Enterprise Edition (J2EE) implementation of a workflow management system. BEA WebLogic Process Integrator consists of three components, as shown in the following figure.

Figure 1-5 BEA WebLogic Process Integrator Components


The central component is the run-time process engine which implements the functionality of BEA WebLogic Process Integrator through a collection of EJBs. The BEA WebLogic Process Integrator Studio and the Worklist are client applications that access the services of the process engine. Each of these components is described more fully in the following sections.

Run-Time Process Engine

The central component of BEA WebLogic Process Integrator is the run-time process engine. The process engine is built on the WebLogic Server infrastructure, so installing WebLogic Server is a prerequisite for using BEA WebLogic Process Integrator. The process engine also requires a JDBC database to store persistent data, such as workflow templates.

The process engine is a collection of EJBs that provide the following services:

Studio Client Application

The BEA WebLogic Process Integrator Studio is a client application with a graphical user interface that business analysts, system administrators, and others can use to perform the following tasks:

Worklist Client Application

Automated workflows sometimes need input from people. This input might include making discretionary decisions (for example, about credit information), handling exceptions, or troubleshooting problems in the workflow. The Worklist application is a client program that enables people to interact with a running workflow. That interaction is typically performed through a graphical user interface. The interface lists tasks for specific users or roles. Users or roles interact with the workflow by performing the tasks assigned to them.

System Architecture

The following figure shows the overall architecture of BEA WebLogic Process Integrator.

Figure 1-6 BEA WebLogic Process Integrator System Architecture


In addition to the process engine and the Studio and Worklist clients, the system architecture includes the following components:

During run time, the process engine can interact with other applications by performing the following tasks:

The process engine also provides a public API that enables external applications to access process engine services.


Defining a Workflow

The BEA WebLogic Process Integrator workflow model is organized hierarchically, as the following figure shows.

Figure 1-7 BEA WebLogic Process Integrator Workflow Model


In this scheme, organizations are at the top. Roles and workflow templates are attached to an organization, and workflow template definitions are attached to workflow templates. Users belong to an organization, and may also be associated with roles.

To define a workflow according to this model, you perform the following steps using the BEA WebLogic Process Integrator Studio:

  1. Specify an organization and its roles, and the users that belong to them.

  2. Create a workflow template for the organization you specified.

    A workflow template is a folder that represents a workflow, and is attached to an organization. Give the folder a meaningful workflow name, such as Order Processing or Billing.

  3. Create one or more workflow template definitions within the workflow template folder.

    A workflow template definition is a version of the workflow template. You distinguish between workflow template definitions by their effective and expiration dates. For example, you can have one workflow template definition that is valid from January to June, and a second one that is valid from July to December. At run time, the process engine starts an instance of the workflow template definition by selecting the most effective definition.

    Each workflow template definition contains workflow components. These components include the graphical representation of the workflow (called nodes), and the actions, variables, and exceptions handlers that are part of the workflow.

Workflow Components

You create a workflow template definition using four types of components: nodes, actions, variables, and exception handlers. This section describes these components.


Nodes are geometric shapes that you use to graphically depict a workflow. The Studio provides the following six nodes:


Actions are units of work that you can specify in any node except a join node. An action can be as simple as assigning a task to a user, or as complicated as sending and receiving XML messages. There are several types of actions:


Variables hold run-time values and data obtained usually from outside sources, such as external applications.

Variables can hold values that are returned by business operations, that are extracted from XML documents, or that are set explicitly by workflow actions. Variables can also be used by the workflow for several other purposes, such as to evaluate a condition in a decision node, or to store the result of a response from the Worklist client application.

BEA WebLogic Process Integrator supports the following types of variables: Boolean, date, double, entity EJB, integer, Java object, session EJB, string, and XML.

Exception Handlers

Exception handlers are used to generate, trap, and respond to exception conditions that are generated internally or externally. Exceptions can be abnormal conditions that you define in the workflow and that you want to trap, or they can be server exceptions that you trap and respond to accordingly. Workflows can contain exception handlers that are provided by the system or that are defined by you.


back to top previous page next page