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:
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.
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
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 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 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.
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.
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:
business rules tasks
The following elements do not appear in 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
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
To move an activity:
The Drop Activity () now appears on the left-hand side of the activities.
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
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
Process Editor Toolbar: Provides quick access to menu items related to process design.
See Introduction to the Process Editor Toolbar for more information.
Process Editor Canvas: Provides a work area for creating your process flow.
See Introduction to the Process Editor Canvas for more information.
BPMN Component Palette: Enables you to quickly access the flow objects, sequence flows, and other elements that comprise a BPMN process.
You can drag and drop these elements from the BPMN component palette onto the process editor canvas. See Introduction to the BPMN Component Palette for more information.
Business Catalog Palette: Provides a list of the business catalog elements that you can use within your BPM project.
See Introduction to the Business Catalog for more information.
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.
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
Reverts the last change made to your process.
Reverses the last undo action you performed.
Cuts the selected items and copies them the clipboard.
Copies the selected items to the clipboard.
Pastes the items currently in the clipboard.
Deletes the selected elements from the process.
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.
Prints the process using your browser's printer setup.
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.
Switches the process editor to collaboration view.
Opens the data objects editor. See Working with Data Objects for more information.
Opens the business indicator editor.
Launches the process player. See Using Process Player for more information.
Zooms in and out of your process.
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.
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
Use the component palette to drag and drop artifacts to the process editor window.
The component palette is greyed-out until you enter edit mode for the project.
The component palette separates BPMN elements into the following groups:
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
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.
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
These services are grouped as follows:
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.
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.
To create a new business process
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.
After opening an Oracle BPM project, you can open any of the processes it contains.
To open a business process
The process opens in the process editor window. Before you can begin editing the process, you must ensure that you are in edit mode.
You can delete processes from your project.
To delete a business process for a project:
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.
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.
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.
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
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.
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.
You cannot delete a swimlane that contains the only start or end event of a process.
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
In a real-world business process, the combination of swimlanes and flow objects within them can be complex.
You can add swimlanes to your BPMN process.
To add a new swimlane to your process:
The new swimlane is created. By default, the swimlane is not assigned a role. You can add a role by editing the swimlane properties.
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:
The new swimlane is created. By default, the swimlane is not assigned a role. You can add a role by editing the swimlane properties.
You can edit the properties of a swimlane in the process editor.
To edit swimlane properties:
Move the cursor over the role name for the swimlane.
Click the Edit icon.
Determine if you want to use an existing role, or create a new one:
To assign an existing role to a swimlane:
Click the Use button.
Select a role from the drop-down list.
To assigning a new role to a swimlane:
Click the Create button.
Enter the name of the new role in the text field.
If you want to optionally add a custom icon to a swimlane, click Change, then select the icon you want to use.
If you want to optionally change the background color of a swimlane:
In the implementation properties editor, enter the RGB value of the color or select a color from the color palette.
Click Apply Changes.
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.
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.
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:
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.
The cursor displays the icon associated with the type of flow object.
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.
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.
Within the process editor window, you can cut, copy, or delete flow objects.
To cut, copy, or delete a flow object:
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.
You can paste the flow object that you previously cut or copied.
To paste a flow object in 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:
This button only appears for flow objects that do not have outgoing sequence flows.
You can delete a sequence flow from a BPMN process.
To delete a sequence flow from a process:
You can edit the basic properties of a sequence flow.
To edit the properties of 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:
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.
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
Message events and the receive task
To assign a business catalog component to a flow object:
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.
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.
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.
To mark a flow objects as draft, edit the implementation properties, as shown in Figure 7-9.
Figure 7-9 Activity Properties - Implementation
To mark a flow object as draft:
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.
You cannot create documentation for sequence flows or measurement marks.
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.
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)
Oracle Workflow (wft)
BPMN 2.0 (bpmn)
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.
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:
The wizards' welcome page is displayed. Click Next.
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.
You can view the newly created BPMN processes from the Project Welcome Page.