Skip Headers
Oracle® Fusion Applications Extensibility Guide
11g Release 1 (11.1.2)

Part Number E16691-03
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

7 Customizing and Extending BPMN Processes

This chapter describes how to use Oracle Business Process Composer to customize and extend Business Process Modeling Notation (BPMN) processes. Oracle Fusion applications use BPMN processes to define process flows within the application. This chapter also describes how to edit BPMN processes by creating and modifying BPM projects based on project templates and deploying those projects to runtime.

This chapter includes the following sections:

7.1 About Customizing BPMN Processes

The Customer Relationship Management (CRM) product family of Oracle Fusion Applications uses Business Process Management Notation (BPMN) processes to define some process flows used within the application. Specifically, some CRM applications use BPMN processes to define approval workflows.

BPMN is a standard notation for modeling the behavior of business processes. See "Modeling Business Processes with Oracle BPM" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for general information on BPMN.

BPMN processes are contained within an Oracle BPM project. BPM projects contain all of the resources required for a functioning BPM application, including BPMN processes and SOA artifacts such as business rules and human tasks.

Using Oracle Business Process Composer, you can customize the BPMN processes used within Oracle Fusion applications by creating, modifying and deploying an Oracle BPM project created from a project template.

Oracle Fusion Applications provide default project templates that you can use to create new process flows. See the product-specific documentation from Oracle Enterprise Repository available from Oracle Support for a list of the default BPM project templates provided by Oracle Fusion Applications.

See "Introduction to Project Templates" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for general information on working with project templates.

A BPM project template is pre-populated with all of the required resources for implementing BPMN processes within an Oracle Fusion application. This includes the BPMN processes that define the process flow as well as the necessary technical components that enable the processes to communicate with other parts of the application. After customizing a BPM project, you can deploy it to runtime.

The technical components contained within a BPM project are called the business catalog. The business catalog contains various reusable services that a BPMN process can use to connect to other components of the application, including other processes, systems, and databases.

The business catalog contains the following reusable components:

Table 7-1 Business Catalog Components Available in Business Process Composer

Business Catalog Component Description

Services

Services are used to connect a BPMN process with other processes, systems, and services, including BPEL processes, databases.

See "How to Create New Services in the Business Catalog" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for more information.

Human tasks

Human tasks enable you to define how end users interact with your BPMN processes. Human tasks are implemented in a BPMN process using the user task.

See "Adding User Interaction to Your Process" in Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

Business rules

Oracle business rules are statements that describe business policies or describe key business decisions.

See "Introduction to the Business Rules Task" in Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for information on implementing business rules within a BPMN process.


7.1.1 Oracle Tools for Customizing and Extending BPMN Processes

Oracle Fusion Applications provide multiple tools for customizing and extending BPMN processes. These tools are described in Table 7-2.

Table 7-2 Oracle Tools for Customizing and Extending BPMN Processes

This tool... Allows you to...

Oracle SOA Composer

Customize business rules, domain value maps, and approval configuration and assignment rules at runtime. See Section 12.2, "Customizing SOA Composites" for more information.

These customizations are performed directly on a running application. They do not require redeployment of the BPM project containing the BPMN process.

Oracle BPM Worklist

Customize approval configuration and assignment rules. See Section 12.2, "Customizing SOA Composites" for more information.

These customizations are performed directly to a running application. They do not require redeployment of the BPM project containing the BPMN process.

Oracle Business Process Composer

Customize BPMN processes by creating and deploying BPM projects based on project templates. This functionality is described in the following sections.

Oracle BPM Studio (Oracle JDeveloper)

Customize project templates. See Chapter 13, "Customizing and Extending Oracle BPM Project Templates."


7.1.2 What You Can Do with BPMN Processes at Runtime

There are two types of runtime customization that you can make to BPMN processes. These are described in the following sections.

7.1.2.1 What You Can Customize Using Oracle SOA Composer and Oracle BPM Worklist

BPMN processes utilize multiple SOA components, including business rules and approval workflow. Using the Oracle SOA Composer and Oracle BPM Worklist, you can customize the following components used by the BPMN processes of a running Oracle Fusion application:

  • Oracle business rules

  • Domain value maps

  • Approval assignment rules in human workflows such as customizing the approval flow for a specific customer.

These customizations can be made directly to a running Oracle Fusion application without having to redeploy the BPM project. See Section 12.2, "Customizing SOA Composites" for information on using Oracle SOA Composer or Oracle BPM Worklist to make these customizations.

Note:

Any changes you make to the deployed, running BPMN processes of an Oracle CRM application will not be preserved if you later redeploy the BPM project that contains them.

7.1.2.2 What You Can Customize Using Oracle Business Process Composer

Using Oracle Business Process Composer, you can make the following customizations to a BPM project created from a project template:

  • Customize an existing BPMN process.

  • Create new BPMN processes.

  • Create simple data objects.

  • Create and modify some business catalog components.

    Table 7-3 lists which business catalog components can be customized or created using Business Process Composer

    Table 7-3 List of Business Catalog Components

    Business Catalog Component Can be created using Business Process Composer? Can be customized using Business Process Composer?

    Business rules

    No

    Yes

    Human tasks

    Yes

    You can create human tasks using Oracle Business Process Composer, however not all functionality of a human task can be customized.

    Yes

    Services

    Yes

    Yes

    Errors

    No

    No


    See Section 7.2, "Creating an Oracle BPM Project" for information on creating a new BPM project based on a project template.

    Changes to the business catalog that cannot be made using Business Process Composer must be made to the project template using Oracle BPM Studio. See Section 7.1.3, "What You Cannot Do with BPMN Processes at Runtime" for more information.

7.1.3 What You Cannot Do with BPMN Processes at Runtime

Often, it is necessary to make changes to a BPMN process that cannot be performed using Business Process Composer. The following tasks must be performed using JDeveloper:

  • Modify project templates

  • Create or customize some business catalog components, including:

    • Configuring advanced properties of web services

    • Creating new adapters and mediators

    • Creating new business rules

    • Creating or customizing errors

    • Configuring advanced features of human tasks, including:

      • Complex assignment support

      • Auto-generated task flow

      • Business rules within human tasks

  • Create complex data objects

To create or customize these components, process developers must modify the project template and republish it to the Oracle BPM repository. After a project template is revised, you can use Business Process Composer to create and deploy BPM projects. See Chapter 13, "Customizing and Extending Oracle BPM Project Templates" for more information.

7.1.4 Before You Begin Customizing BPMN Processes

Before customizing BPMN processes using Business Process Composer, you should be familiar with the Oracle Fusion application architecture that enables customization, as described in Chapter 1, "Customizing and Extending Oracle Fusion Applications."

You should also understand the typical workflows for customization and extensibility, as described in Chapter 2, "Understanding the Customization Development Lifecycle."

You should be familiar with how to model business processes using the Business Process Modeling and Notation (BPMN) standard. See "Modeling Business Processes with Oracle BPM" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

To create and deploy projects based on project templates, you must be granted the following applications roles:

  • BPMCreateNewProject

  • BPMCreateNewProjectFromTemplate

  • BPMComposerDeveloper

  • BPMComposerDesigner

  • BPMComposerDocumentProject

Your security administrator must grant these application roles to you. See "Introduction to Security Roles in Oracle Business Process Composer" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management. for more information.

7.2 Creating an Oracle BPM Project

You can use Oracle Business Process Composer to customize or extend BPMN processes. BPMN processes are contained within an Oracle BPM project. After launching Oracle Business Process Composer the first step in modifying a BPMN process is to create a new project based on a project template or to open an existing BPM project.

Task: Access Oracle Business Process Composer

To customize BPMN processes within an Oracle CRM application, you must access Business Process Composer from CRM Application Composer.

Task: Create a New BPM Project Based on a Project Template

Oracle Fusion applications do not ship with running BPMN processes out-of-the-box. In order to integrate BPMN processes within Oracle Fusion applications, you must create a new BPM project based on a project template, deploy the project to runtime, then configure the Oracle Fusion application to use the BPMN processes of the deployed BPM project.

Business Process Composer enables you to create new BPM projects based on project templates. For information on creating a new BPM project, see "How to Create a New Project From a Project Template" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

Refer to the product-specific documentation from Oracle Enterprise Repository available from Oracle Support for a list of the default BPM project templates provided by Oracle Fusion Applications. By default, project templates are stored in the Templates folder of the BPM repository.

Task: Open an Existing BPM Project

If you have already created a new BPM project based on a template, you can continue to customize the project before deploying it to runtime.

For information on opening an existing BPM project, see "How to Open a Project Using the Project Browser" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

7.3 Customizing BPMN Processes

After creating a new BPM project based on a project template, you can modify the BPMN processes within the project. Additionally, you can customize the business catalog components within the BPM project.

Task: Open a BPMN Process

See "How to Open a Business Process" of Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for information on opening a BPMN process.

Task: Customize a BPMN Process

You can alter the flow of your BPMN process by adding, removing, or modifying BPMN flow objects.

See "Working with Flow Elements" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for more information on using the process editor to modify BPMN processes.

See "Modeling Business Processes with Oracle BPM" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for specific information on BPMN flow objects.

Task: Assign Business Catalog Components to a BPMN Flow Object

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

The business catalog components and their corresponding flow objects are shown in Table 7-4.

Table 7-4 BPMN Flow Objects and Their Corresponding Services

BPMN Flow Object Business Catalog Component

User task

Human tasks

Service task

Services, including web services and adapters

Business rules task

Business rules

Error events

Errors


See "The Business Catalog" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for more information on working with reusable services and the business catalog.

Task: Add Milestones to the Activity Guide

The activity guide of a BPM project defines a set of milestones. Each BPM project contains one activity guide. An activity guide can contain multiple milestones.

A milestone is a specific set of tasks that the process participant has to complete. A milestone is complete when the user successfully runs a specific set of tasks in the milestone.

Each milestone is a defined by a set of human workflow tasks. Each human workflow task is itself a task flow that may require the collaboration of multiple participants in various roles.

See "Using Guided Business Processes to Set Project Milestones" in Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management. for information on creating milestones.

Task: Customize Business Rules

Business rules enable dynamic decisions to be made at runtime that allow you to automate policies, computations, and reasoning while separating rule logic from underlying application code.

Note:

You can use Oracle Business Process Composer to modify business rules within an Oracle BPM project. These changes are made to the runtime application when the project is deployed.

You can use the SOA Composer to make runtime changes directly to the runtime environment, without deploying a project. See Section 12.2, "Customizing SOA Composites" for more information making runtime changes to a BPMN process.

For more information about customizing rules using Oracle Business Process Composer, see "Using Oracle Business Rules" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

Task: Create or Customize Human Tasks

Human tasks enable you to integrate human interaction with connectivity to systems and services as part of an end-to-end process flow. Human tasks are responsible for handling all interactions with the users or groups participating in the business process.

Using Business Process Composer, you can create and customize human tasks. See "Working with Human Tasks" in Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for information on creating and configuring human tasks.

Task: Customize Expressions

Expressions are used to evaluate the data used within your process. Different flow objects use expressions to determine which path within the process to follow.

Expressions are used to configure the following BPMN elements:

You can customize the expressions used within a BPMN process using Oracle Business Process Composer.

See "Working with Expressions" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

7.4 Publishing Oracle BPM Projects

In Oracle BPM, publishing a project refers to the process of saving it in the BPM repository where projects and projects templates are stored. Process developers can publish project templates to the repository where you can access them to create new BPM projects.

The BPM repository can also be used to share BPM projects and project templates between other Business Process Composer and JDeveloper users.

In the BPM repository, projects and project templates are stored in the following default folder:

Table 7-5 Default Location of BPM Projects and Project Templates in the BPM Repository

Type Location

BPM Projects

/bpm/drafts

BPM Project Templates

/bpm/templates


Within these default folders you can create additional subfolders to organize your projects and project templates.

Task: Publish a Project

See "How to Save Changes to a Project" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for information on how to publish a project to the BPM repository.

7.5 Deploying an Oracle BPM Project

After creating a new BPM project, you must deploy it to runtime in order for the BPMN processes contained within it to be accessible to Oracle Fusion applications.

After customizing a project and publishing it, you must deploy the project to runtime. After the project is deployed, the BPMN processes within it are accessible to the Fusion applications that implement them.

Task: Deploy a BPM Project

The first time you deploy a new BPM project, you must export it as a SAR file. A SAR file is an archive of a SOA composite application that, like a BPM project, contains all of the required resources of a deployable application.

See "How to Export a Project as a SAR File" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management.

After the project is exported as a SAR file, your system administrator must deploy it to runtime using Oracle Enterprise Manager. See the Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite for more information.

Task: Re-deploy a BPM Project

After the initial deployment of a BPM project, you can redeploy the BPM project containing any additional customizations you need to make. You can redeploy the BPM project to runtime directly from Business Process Composer.

Note:

If you want to revise the BPMN processes within a previously deployed BPM project, you must deploy the revised BPM project using the identical name of the original deployed project.

Any changes you have previously made to a deployed, running BPMN processes using Oracle SOA Composer or Oracle BPM Worklist will not be preserved after redeploying the BPM project.

See "How to Deploy a Project to Run Time" in the Oracle Fusion Middleware Business Process Composer User's Guide for Oracle Business Process Management for information on deploying a BPM project to runtime.

Business Process Composer uses the Deployer role to enable users to deploy projects directly to Oracle BPM run time. This is a role used specifically by Business Process Composer. When a user is assigned the Deployer security role, the Deploy Project option is available from the Tools menu.

Note:

You may want to deploy a BPM project using the same name as the project and project template to make it easier to associate the deployed project with its design time version.

Task: Configure Fusion Applications to Use Business Processes

After deploying a BPM project, you must use CRM Application Composer to add an object workflow that conditionally responds to a record modification event for the business object. This enables the business object to call the corresponding BPMN process. See Section 7.6, "Configuring BPMN Processes within an Oracle Fusion Application" for more information on integrating BPMN processes within an Oracle CRM application.

7.6 Configuring BPMN Processes within an Oracle Fusion Application

After deploying a BPM project you must configure an Oracle Fusion application to use the BPMN processes. After a BPM project is deployed, you must use CRM Application Composer to add an object workflow that conditionally responds to a record modification event for the business object. See Section 4.2, "Editing Objects" for more information on adding object workflows.