7 Creating and Working with Business Processes

This chapter provides information about creating and using business processes in Oracle Business Process Management (Oracle BPM). It provides a general introduction to business processes, describes the process editor window, and provides procedural information for creating and using processes.

For information about using Business Process Model and Notation (BPMN) 2.0 to design a business process, see BPMN Flow Object Reference.

This chapter includes the following sections:

7.1 Introduction to Business Processes

A business process is a sequence of tasks that result in a well-defined outcome. Business processes are the core components of process-based business applications created with the Oracle BPM Suite.

Although projects are higher level wrappers that contain all the resources of a business application, the processes within the project determine how the application works. Within a business process, BPMN flow objects define the flow and behavior.

Business processes are generally created by process analysts who determine the business requirements that must be addressed and define the corresponding process flow.

Table 7-1 describes how the type of a process determines how it behaves in relation to other business processes.

Note:

By default, new business processes are synchronous. After creating a new process, you can change the type by editing the process.

Table 7-1 Types of Business Processes

Process Type Description

Synchronous Service

Synchronous services are a type of business process that is invoked from another process or service synchronously. In a synchronous service, the calling process waits until the process completes before continuing.

Asynchronous Service

Asynchronous services are a type of business process that is invoked from another process or service asynchronously. In an asynchronous service, the calling process does not wait until the process completes before continuing.

Manual Process

Manual processes are those that require user interaction. Manual processes must begin with a none start event. They must end with a none end event.

Reusable Process (Reusable Subprocess)

Reusable processes are processes that can be called by a BPMN process. In BPMN terminology, reusable processes are often called reusable subprocesses. See Using Subprocesses in Oracle BPM for more information about the different types of subprocesses supported by Oracle BPM.

Use the call activity to call reusable subprocesses within your business process. See Introduction to the Call Activity for information about calling reusable processes.

7.2 Introduction to the Project Toolbar

The process editor opens as a tab on the BPM Project Welcome page. Therefore, the project toolbar remains visible when the process editor is open in either the narrative or graphical view.

The functions displayed on the project toolbar are available for use while editing processes.

For more information about the project toolbar options, see Introduction to the Project Toolbar.

7.3 Introduction to the Narrative View

The narrative view provides a way of creating business processes by entering text rather than dragging graphical icons onto a palette. This is useful for process designers who are not familiar with BPMN.

When you add an item to your process textually, Oracle Business Process Composer automatically converts it to the correct underlying BPMN. The auto layout feature in the graphical view automatically formats the BPMN process.

Both views contain the same information, meaning that you can edit the same process in both views if necessary. When editing a process in one pane, it is automatically updated in the other.

The narrative view provides an alternate way of creating and editing business processes. However, it is not intended to be a replacement for the graphical editor. The following BPMN elements are visible in narrative view, but cannot be edited:

  • script tasks

  • business rules tasks

The following elements do not appear in the narrative view:

  • Notes

  • Measurement

7.4 Working with the Narrative View

Use the narrative view to manage activities, roles and documentation in a process.

Access the narrative view in a business process by clicking the Narrative tab at the bottom of the process editor, as shown in Figure 7-1.

Figure 7-1 Process Editor - Narrative View

Description of Figure 7-1 follows
Description of "Figure 7-1 Process Editor - Narrative View"

You can use the narrative view to perform the following tasks:

  • Add activities to a process by clicking the Add (+) icon in the activity directly above where you want to add a new one. You can add documentation about the activity, if required.

  • Delete a selected activity by clicking the delete icon and confirming the deletion.

  • Move an activity to a different position in the process flow

  • Assign roles to a selected activity by clicking the Change Role drop down to either add a new role or change the current role to a different role.

  • View and edit documentation

7.4.1 Moving an Activity

To move an activity:

  1. Select the activity you want to move.
  2. Click the Move (move icon) icon.

    The Drop Activity (drop activity icon) now appears on the left-hand side of the activities.

  3. Click the Drop Activity icon in the location where you want to move the original activity.

7.4.2 Narrative View Options

You can customize how the narrative view is displayed.

Click the Expand all documentation check box located at the top right-hand corner of the view, as shown in Figure 7-2 to show all documentation.

Click the Show Icons check box located at the top right-hand corner of the view, as shown in Figure 7-2 to view activities as icons.

Figure 7-2 Process Editor: Narrative View - Options

Description of Figure 7-2 follows
Description of "Figure 7-2 Process Editor: Narrative View - Options"

7.5 Introduction to the Process Editor Graphical View

The process editor allows you to quickly create and edit BPMN processes.

The process editor appears as a tabbed pane in the Business Process Composer application and is divided into four areas, as shown in Figure 7-3.

Figure 7-3 Process Editor - Graphical View

Description of Figure 7-3 follows
Description of "Figure 7-3 Process Editor - Graphical View"

You can open multiple processes within the same project simultaneously in Business Process Composer. Each process opens in its own tab within the editor window.

7.5.1 Introduction to the Process Editor Toolbar

The process editor window contains a toolbar enabling access to the Business Process Composer features described in Table 7-2.

Table 7-2 Process Editor Menu

Menu Item Description

Undo

Reverts the last change made to your process.

Redo

Reverses the last undo action you performed.

Cut

Cuts the selected items and copies them the clipboard.

Copy

Copies the selected items to the clipboard.

Paste

Pastes the items currently in the clipboard.

Delete

Deletes the selected elements from the process.

Autolayout

Automatically adjusts the layout of your process.

Toggle grid visibility

Shows or hides a grid in the process editor window.

Snap to grid

Centers the flow objects in your process on the nearest grid axis. Existing flow objects are automatically centered. New flow objects are automatically be centered when added.

This menu item is active only when toggle grid visibility is enabled.

Print

Prints the process using your browser's printer setup.

Edit conversations

Opens the conversations editor. Use this editor to define the interface that determines the input and output data objects.

Find process usage

Determines which other processes within the current project call the current process.

View collaboration

Switches the process editor to collaboration view.

Data objects

Opens the data objects editor. See Working with Data Objects for more information.

Business indicators

Opens the business indicator editor.

Player

Launches the process player. See Using Process Player for more information.

Zoom slider

Zooms in and out of your process.

7.5.2 Introduction to the Process Editor Canvas

The process editor canvas is the central area of the process editor window. Use the process editor canvas to create the graphical representation of your process using the elements available in the BPMN component palette. In addition to a process flow, the process editor canvas also displays swimlanes.

For more information about swimlanes, see Using Swimlanes to Organize Your Process.

7.5.3 Introduction to the BPMN Component Palette

Use the BPMN component palette to add flow objects, sequence flows and business catalog elements to your process. Figure 7-4 shows the component palette.

Figure 7-4 BPM Process editor - Component Palette

Description of Figure 7-4 follows
Description of "Figure 7-4 BPM Process editor - Component Palette"

Use the component palette to drag and drop artifacts to the process editor window.

Note:

The component palette is greyed-out until you enter edit mode for the project.

The component palette separates BPMN elements into the following groups:

  • Activity

  • Interactive

  • Gateway

  • Catch Event

  • Throw Event

  • Note

  • Measurement

Business Process Composer provides two separate modes for adding flow objects to a process:

  • Single object mode: Enables you to add individual flow objects one at a time.

    This mode is indicated by a 1 within a blue circle as shown in Figure 7-5.

    Figure 7-5 Single Object Entry Mode

    Description of Figure 7-5 follows
    Description of "Figure 7-5 Single Object Entry Mode"
  • Multiple object mode: Enables you to quickly add multiple flow objects of the same type.

    This mode is indicated by an N within a blue circle.

Click the blue circle, shown in Figure 7-5, to toggle between the two entry modes.

7.5.4 Introduction to the Business Catalog

Use this panel to select reusable services from the business catalog. Figure 7-6 shows the business catalog.

Figure 7-6 BPM Process Editor - Business Catalog

Description of Figure 7-6 follows
Description of "Figure 7-6 BPM Process Editor - Business Catalog"

These services are grouped as follows:

  • Services

  • External references

  • Human tasks

  • Business rules

Note:

You cannot create external references using Oracle Business Process Composer. Create external references using Oracle BPM Studio.

Share projects containing references using the Oracle BPM repository or include them as part of a project template.

You can use Oracle Business Process Composer to create services based on web services. However, you must create other services based on adapters and other service-oriented architecture (SOA) components in Oracle BPM Studio.

You can use Oracle Business Process Composer to assign reusable services from the business catalog to the corresponding flow objects.

See The Business Catalog for more information.

7.6 Working with Business Processes

You create business processes within an Oracle BPM project. You can add one or more processes to your project.

The following sections describe how to create, open, and delete business processes.

7.6.1 How to Create a New Business Process

To create a new business process

  1. Go to the Project Welcome Page.
  2. If you are editing a shared project, ensure that you are currently editing the project.
  3. Click Processes, then click New Process.
  4. Enter a name for the process, then click Create.

The new process appears in the list of processes.

When you create a new business process it contains a start and end event connected by a default sequence flow. By default, both the start and end events are none events. You can change the type as required by your business process.

See Defining the Start and End Point of a Process for more information.

7.6.2 How to Open a Business Process

After opening an Oracle BPM project, you can open any of the processes it contains.

To open a business process

  1. Go to the Project Welcome Page.
  2. Click Processes.
  3. Click the name of the process you want to open.

The process opens in the process editor window. Before you can begin editing the process, you must ensure that you are in edit mode.

7.6.3 How to Delete a Business Process

You can delete processes from your project.

To delete a business process for a project:

  1. Open your project.
  2. Go to the Project Welcome Page.
  3. Click Processes.
  4. Move the cursor over the name of the process you want to delete.
  5. Click the Delete icon, then click OK.

7.6.3.1 What You Need to Know About Deleting a Business Process

When deleting a process, ensure that there are no remaining references to the deleted process elsewhere in your project. For example, if the deleted process was invoked from another process through a message throw event, you must ensure that you have reconfigured the invoking process so it is no longer referring to the deleted process. An error is displayed during validation if any remaining references to the deleted process still exist.

7.7 Using Swimlanes to Organize Your Process

Swimlanes help you organize your process. They appear as horizontal lines across the process editor. All flow objects must be placed in a swimlane.

Roles are assigned to swimlanes and determine which members of your business organization are responsible for performing the work of your process-based application.

7.7.1 Introduction to Roles

The key to design a business process is to determine the people and roles required to complete each of the tasks that require user interaction. Within your process, roles are used to decide who is responsible for performing the work that is performed within your business processes. Roles allow you to define functional categories that represent job functions or responsibilities within your organization.

The roles defined in your process are also referred to as logical roles. When your Oracle BPM project is deployed to the runtime environment, these roles are mapped to LDAP roles that correspond to the users in your real-world organization.

Roles are assigned to the horizontal swimlanes that display the roles responsible for completing activities and tasks within your process. Oracle Business Process Composer allows you to create and edit the required roles within your process and assign them to swimlanes.

Oracle BPM Studio or Oracle BPM Workspace, you can also map roles to specific users using LDAP. Oracle BPM Studio also allows you to create more robust organizational models using organizational units, calendars, and holidays.

7.7.1.1 Roles in Context

Process analysts are responsible for determining what roles are required when designing a business process.

The LoanProcess example, shown in Figure 7-7 defines the following roles:

Figure 7-7 BPM Process Editor - Swimlanes

Description of Figure 7-7 follows
Description of "Figure 7-7 BPM Process Editor - Swimlanes"
  • Loan Officer: Loan officers are responsible for creating the loan request and forwarding it to the loan processor.

  • Loan Processor: Loan processors are responsible for reviewing the loan application and checking the credit history of the loan applicant before forwarding the application to the underwriter for approval.

  • Underwriter: This role represents users who are responsible for reviewing and approving the loan application.

    Additionally, they disburse the loan if it is approved.

7.7.2 Introduction to Swimlanes

Swimlanes are the horizontal lines that run across the process editor. All flow objects must be placed within a swimlane.

Swimlanes can also be used to group flow objects based on the roles defined within your process. Swimlanes that contain user tasks must have roles assigned to them. Swimlanes visually display the role responsible for performing each flow object within your process. Additionally, you can have multiple swimlanes that are assigned to the same role.

Swimlanes can make your process more readable when you must use the same role in different parts of the same process.

When you create a new process, Oracle BPM Studio and Oracle Business Process Composer create a default swimlane. You can add additional swimlanes to your process as necessary. When adding interactive and manual activities to a process, you must assign a role to the swimlane.

Note:

You cannot delete a swimlane that contains the only start or end event of a process.

7.7.2.1 Swimlanes in Context

Figure 7-8 shows a simple process split across multiple swimlanes. In this example, the SalesRep role is assigned to the first swimlane. Because the Enter Quote user task appears inside this swimlane, process participants assigned to the SalesRep role are responsible for performing this task.

Figure 7-8 A Simple Business Process Split Across Two Swimlanes

Description of Figure 7-8 follows
Description of "Figure 7-8 A Simple Business Process Split Across Two Swimlanes"

In a real-world business process, the combination of swimlanes and flow objects within them can be complex.

7.7.3 Adding Swimlanes to Your Process

You can add swimlanes to your BPMN process.

To add a new swimlane to your process:

  1. Right-click on a white area of the process editor canvas.
  2. Select Add Lane.

The new swimlane is created. By default, the swimlane is not assigned a role. You can add a role by editing the swimlane properties.

7.7.4 Adding a Swimlane and a Flow Object to Your Process

You can add a new swimlane and flow object to your BPMN process.

To add a new swimlane to your process by adding a new flow object:

  1. Open the process where you want to add a swimlane.
  2. From the component palette, select a flow object, then drag and drop it on the process canvas below an existing swimlane.

The new swimlane is created. By default, the swimlane is not assigned a role. You can add a role by editing the swimlane properties.

7.7.5 How to Edit Swimlane Properties

You can edit the properties of a swimlane in the process editor.

To edit swimlane properties:

  1. Move the cursor over the role name for the swimlane.

  2. Click the Edit icon.

  3. Determine if you want to use an existing role, or create a new one:

    To assign an existing role to a swimlane:

    1. Click the Use button.

    2. Select a role from the drop-down list.

    To assigning a new role to a swimlane:

    1. Click the Create button.

    2. Enter the name of the new role in the text field.

  4. If you want to optionally add a custom icon to a swimlane, click Change, then select the icon you want to use.

  5. If you want to optionally change the background color of a swimlane:

    1. Click Implementation.

    2. In the implementation properties editor, enter the RGB value of the color or select a color from the color palette.

    3. Click Apply Changes.

7.7.6 Sharing Roles Between Business Process Composer and BPM Studio

Oracle BPM Studio allows you to integrate roles within complex organization models based on organizational units, calendars and holidays.

When editing a project in Oracle Business Process Composer, you can access the roles defined within the project. However, you cannot view or edit the organizational information defined within the project.

Additionally, you can create new roles using Oracle Business Process Composer. These roles are incorporated as part of the overall organization information of the project.

7.8 Working with Flow Elements

This section describes the basic mechanics of using the process editor to add flow elements to a process.

See BPMN Flow Object Reference for information about designing your business process using BPMN 2.0.

7.8.1 How to Add a Flow Object from the Component Palette

To add flow objects to your process drag them from the component palette onto the process editor canvas.

To add a flow element from the component palette:

  1. Open the process where you want to add flow elements.
  2. Ensure you are in edit mode.
  3. In the component palette, double-click the type of flow object you want to add.
  4. Select the object entry mode you wish to use.

    You can choose to enter a single flow object or multiple flow objects of the same type. See Introduction to the BPMN Component Palette for more information.

  5. Click and drag the flow object you want to add to the area in process editor canvas where you want to place it.

    The cursor displays the icon associated with the type of flow object.

  6. Position the cursor at the point in your process where you want to add the flow object, then click the mouse.

    If you are in multiple object mode, you can continue clicking within the process editor canvas to add additional flow objects of the same type.

    Note:

    If you position the cursor over a sequence flow, Oracle Business Process Composer automatically creates incoming and outgoing sequence flows for the new flow object.

7.8.2 How to Cut, Copy, or Delete a Flow Object

Within the process editor window, you can cut, copy, or delete flow objects.

To cut, copy, or delete a flow object:

  1. Select the flow object or sequence flow that you want to cut, copy, or delete.
  2. Select Cut, Copy, or Delete from the process editor toolbar.

    Note:

    When you cut or delete a flow object that contains incoming and outgoing sequence flow, Oracle Business Process Composer automatically connects it to the outgoing sequence flow. However, you may have to manually reconfigure the surrounding flow objects.

7.8.3 How to Paste a Flow Object in a Process

You can paste the flow object that you previously cut or copied.

To paste a flow object in a process:

  1. Right-click in the area of the process editor canvas where you want to paste a flow object.
  2. Select Paste.

7.8.4 How to Add a Sequence Flow to a Process

Sequence flows define the order or sequence which the work is performed within a process. For more information, see Controlling Process Flow Using Sequence Flows

To add sequence flows to your process:

  1. Open your process.
  2. Move the cursor over the flow object where you want to create the outgoing sequence flow.
  3. Click the Add Sequence flow button.

    This button only appears for flow objects that do not have outgoing sequence flows.

  4. Move the cursor to the flow object you want to connect to, then left-click.

7.8.5 How to Delete a Sequence Flow

You can delete a sequence flow from a BPMN process.

To delete a sequence flow from a process:

  1. In the process editor canvas, right-click the sequence flow you want to delete.
  2. Select Delete.

7.8.5.1 What You Need to Know About Deleting a Sequence Flow

When you delete a sequence flow from a process, any implementation details you may have configured for the sequence flow are lost.

7.8.6 How to Edit the Properties of a Flow Object

You can edit the basic properties of a sequence flow.

To edit the properties of a flow object:

  1. Right-click on the flow object.
  2. Select Properties.
  3. Edit the properties of the flow object.
  4. When you are finished editing the properties, click the down arrow located at the top right-hand corner of the Properties pane.

7.8.7 How to Assign a Custom Icon to a Flow Object

Use Oracle Business Process Composer to select a custom icon to replace the default BPMN icon of a flow object. You can select from a list of custom icons provided by Oracle BPM.

To assign a custom icon to a flow object:

  1. Right-click the flow object, then select Properties.
  2. Click Change, then select the icon you want to use.
  3. Click outside the properties window to apply your changes.

7.9 Working with Business Catalog Components

The following sections provide information about working with the business catalog in Oracle Business Process Composer.

See The Business Catalog for more information about the business catalog.

7.9.1 How to Assign a Business Catalog Component to a Flow Object

Use Oracle Business Process Composer to configure implementation details for a flow object by assigning business catalog components to it.

You can assign business catalog components to these flow objects:

  • Business rule task

  • Service task

  • User task

  • Message events and the receive task

To assign a business catalog component to a flow object:

  1. Open your process.
  2. Right-click on the flow object where you want to add the business catalog component.
  3. Select Implementation.
  4. Select Browse, then select the business catalog component from the list.
  5. Click OK.
  6. Click Apply Changes.

    Note:

    You must click Apply Changes to save any changes you make to the implementation of a flow object. Even if you save the project, implementation changes are not saved until you click Apply Changes.

7.9.2 How to Create New Human Tasks in the Business Catalog

You can create new human tasks within the business catalog. See Working with Human Tasks for more information.

After creating human tasks, you can then assign them to the user tasks within your process. See Adding User Interaction to Your Process for information about using human tasks within a BPMN process.

7.10 Working with Draft Processes

Oracle BPM allows you to create and deploy draft processes. A draft process has one or more flow objects, which do not have their implementation defined. By deploying a draft process, you can test the parts of your process that have been completed without having to wait until all flow objects have been implemented.

To create a draft process, mark one or more flow objects within the process as draft. However, a draft process must be valid before it can be deployed.

When a flow object is marked as draft, you cannot configure data associations for it. If you mark a flow object as draft that has previously had data associations configured, these are lost.

You can define the implementation details of a draft flow object. However, it is not required. A draft flow object with no implementation defined does not generate errors during project validation.

When a project containing a draft flow object is deployed, implementation details for those flow objects are ignored. For example, if your process contains a user task marked as draft, the runtime engine does not create instances of the associated human task.

7.10.1 How to Mark a Flow Object as Draft

To mark a flow objects as draft, edit the implementation properties, as shown in Figure 7-9.

Figure 7-9 Activity Properties - Implementation

Description of Figure 7-9 follows
Description of "Figure 7-9 Activity Properties - Implementation"

To mark a flow object as draft:

  1. Open your process.
  2. Right-click on the flow object, then select Implementation.
  3. Select the check box next to Is Draft.
  4. Click Apply Changes.

7.11 Documenting Your Process

You create documentation for your process using the documentation editor. You can add documentation for an entire process or for individual flow objects within a process.

Using Oracle BPM you can create two different types of documentation:

  • End User: Documentation visible to end users of your process-based application using Process Workspace.

  • Internal (Use Case): Documentation for process analysts and developers who are collaborating on a business process or who may revise it later.

    You can define use-case documentation for each of the activities, events, and gateways within your process.

    Note:

    You cannot create documentation for sequence flows or measurement marks.

For more information about documenting your process, see Understanding Process-Level Documentation and Understanding Activity-Level Documentation.

7.12 Importing and Exporting Process Models

Use Oracle Business Process Composer to import and export external process models created in other programs.

Use the BPM Process Model Converter wizard to import external process models and convert them to BPMN.

7.12.1 Importing Process Models into Oracle BPM

Use the BPM Process Model Converter wizard to import external process models and convert them to BPMN. Oracle BPM supports importing and converting process models in the following formats, as shown in Figure 7-10.

  • Oracle Tutor (docx)

  • Visio (vdx)

  • Oracle Workflow (wft)

  • BPMN 2.0 (bpmn)

  • XPDL (xpdl)

Figure 7-10 BPM Process Model Converter Wizard

Description of Figure 7-10 follows
Description of "Figure 7-10 BPM Process Model Converter Wizard "

You may have to modify Visio and XPDL processes before conversion to ensure that they are converted accurately. See Preparing Processes for Import into Oracle BPM for more information.

Note:

If the original file contains properties and artifacts that are not supported by BPMN, the unsupported elements are not converted and are omitted from the final BPMN process.

For example, if the original file contains loop characteristics on a regular activity, which is not supported in Oracle BPM, the BPMN process does not contain the loop characteristics after conversion.

To import a process model:

  1. From the main menu, select Import, then Import Model to open the BPM Process Model Converter wizard.

    The wizards' welcome page is displayed. Click Next.

  2. On your local file system, highlight the format type of your file and then browse to the file you want to import. Click Next.
  3. If you are importing a Visio or XPDL file, select one of the following:
    • Create a separate model from each pool

    • Merge pools into a single model

    This dialog appears even if the original file does not contain multiple pools.

  4. Click Finish.

You can view the newly created BPMN processes from the Project Welcome Page.