11 Using Process Analytics

This chapter describes how to use and configure BPM Process Analytics to monitor the activity of the processes in your project. Process Analytics enable you to obtain performance and workload metrics of the processes in your project. You can use this metrics to make decisions about your process.

This chapter includes the following sections:

11.1 Introduction to Process Analytics

Business Process Analytics enables you to monitor the performance of your deployed processes. It measures the key performance indicators in your project and stores them in a database. Process analysts can view the metrics stored in the Process Analytics databases using WorkSpace dashboards or Oracle BAM, depending on the database you select to store the information.

Process analysts can monitor standard pre-defined metrics and process specific user-defined metrics. Process developers can define process specific metrics using Business Indicators. Business Indicators are a special type of project data object that the BPMN Service Engine stores to the Process Analytics databases when it runs the BPMN processes.

Process developers define the key performance indicators you want to monitor while developing your process. After publishing the application business analysts can use the default dashboards BPM WorkSpace provide or create custom dashboards to view the metrics the BPMN Service Engine gathered while running BPMN processes.

Process Analytics track:

  • Process and Activity Performance Metrics

  • Workload Metrics

  • Human Resource Metrics

You can store the key performance indicators in your process using business indicators. By default the BPMN Service Engine stores the values of pre-defined measures and dimensions that are common to all BPMN processes.

The supported pre-defined measures are:

  • Number of active instances by activity, process, and participant

  • Average time to complete an activity

  • Average time to complete a process

The supported pre-defined dimensions are:

  • Process

  • Activity

  • Participant

You can also define custom measures according to your needs. To define custom measures you use business indicators. The different types of business indicators enable you to measure specific values, keep track of categories or count the times an instance completes one or more activities.

Oracle BPM provides you with a set of pre-defined cubes you can use to store the Process Analytics data. Cubes are a structure used to organize a database so that it enables you to analyze data in real time and view it from multiple perspectives.

You can also choose to store these data to Oracle BAM. You can use both systems simultaneously.

Figure 11-1 Process Analytics Cycle

This diagram shows how the process analytics cycle.
Description of "Figure 11-1 Process Analytics Cycle"

11.2 Typical Process Analytics Workflow

The following list describes the typical tasks you perform when you use Process Analytics in a BPM Project:

  • Create a BPM project and one or more BPMN processes.

  • Configure the sampling points generation for the project or process.

  • Configure the project to use BPM Cubes or Oracle BAM, or both.

  • Add business indicators to the processes in your project.

  • Assign values to the business indicators.

  • Add measurement marks or counter marks in the processes where you want to track the value of the business indicators.

  • Deploy your project.

  • Use BPM Workspace or BAM Architect to configure custom dashboards.

11.3 Configuring Projects, Processes and Activities to Generate Sampling Points

When the BPMN Service Engine runs the activity in the process it stores data about the process to the BPM Cubes and Oracle BAM Data Objects. This data comes from the sampling points defined in the project. You can configure which processes in your project, or which activities in your project generate sampling points in these databases.

You can configure the sampling point generation at the following levels:

  • Project

  • Process

  • Activity

You can configure your project to generate sampling points for all the activities in the processes it contains or only for interactive activities. You can also choose not to generate sampling points for the processes in this project. BPMN processes use this value when they are configured to use the project default settings.

By default, the project is configured to generate sampling points only for interactive activities.

You can configure your processes to use a setting for sampling point generation different from the one defined by the project. Generally you do this to improve the performance of the project. For example, if your project contains a process that contains multiple activities and you are not interesting in obtaining process metrics for this process, then you might choose to configure the process to not generate sampling points. Another example is if you are interested in measuring only one process within your project, then you might choose to configure the project to not generate sampling points and configure that particular process to generate sampling points.

By default, the process is configured to use the project sampling point configuration.

You can also configure one or more of the activities in your process to use a sampling point setting different from the one used in your process. For example, you might choose to configure all the gateway activities in your process to not generate sampling points because you consider these metrics do not provide relevant information.

By default activities are configured to use the process sampling point configuration. If in turn, the process is configured to use the project configuration, then the activities use the configuration the project specifies.

11.3.1 How to Configure the Sampling Point Generation of a Project

You can configure the sampling point generation at the project level.

To configure the sampling point generation of a project:

  1. In the BPM Project Navigator, right-click the project you want to configure.

  2. Select Project Preferences.

  3. In the Process Analytics Summary tab, in the Project Sample Points section, select an option. Available options are:

    Option Description
    Generate Only for Interactive Activities Generate sampling points only for the user tasks in the processes contained in the project.
    Generate for All Activities Generate sampling points for all the activities in the processes contained in the project.
    Do Not Generate Do not generate sampling points for any of the activities in the processes contained in the project.

  4. Click OK.

11.3.2 What Happens When You Configure a Project To Generate Sampling Points

All the processes you create within a project use the sampling point configuration defined for that project, unless you edit the process properties to use a different configuration for that specific process.

11.3.3 How to Configure the Sampling Point Generation for a Process

You can configure the sampling point generation at a process level.

To configure sampling point for a Process:

  1. In the BPM Project Navigator, right-click the process you want to configure.

  2. Select Properties.

  3. Click the Advanced tab.

  4. In the Process Sampling Points section, select an option. Available options are:

    Option Description
    Inherit Project Default The process uses the project sampling point configuration to decide if it generates sampling points.
    Generate Only for Interactive Activities Generate sampling points only for the user tasks in the process.
    Generate for All Activities Generate sampling points for all the activities in the process.
    Do Not Generate Do not generate sampling points for any of the activities in the process.

  5. Click OK.

11.3.4 What Happens When You Configure the Sampling Point Generation for a Process

The BPMN Service Engine uses the defined sampling point configuration to decide whether to store the Process Analytics information, regardless of what the project sampling point configuration indicates. The activities in the process use the process sampling point configuration, unless you edit them to use a different configuration.d

11.3.5 How to Configure the Sampling Point Generation for an Activity

You can configure the sampling point generation at the activity level.

To configure the sampling point generation for an activity:

  1. Right-click the activity you want to configure.

  2. Select Properties.

  3. Click the Basic tab.

  4. Expand the Sampling Points section.

  5. Select an option. Available options are:

    Option Description
    Inherit Process Default The BPMN Service Engine uses the process sampling point configuration to decide if it generates sampling points for this activity.
    Generate Generate sampling points for this activity.
    Do Not Generate Do not generate sampling points for this activity.

  6. Click OK.

11.3.6 What Happens When You Configure the Sampling Points for an Activity

The BPMN Service Engine uses the activity sampling point configuration to decide wether to store the Process Analytics information, regardless of what the project and process sampling point configurations indicate.

11.4 Adding Business Indicators to Projects

Business Indicators are project data objects you use to store the value of the key performance indicators of your process. For your convenience business indicators have their own entry in the structure window.

Key performance indicators represent relevant information in your process that can help you determine if your process is running as expected.

The following are examples of common business indicators:

  • Order Amount

  • Product Stock

  • Elapsed Time

  • Shipping Status

You can use business indicators to store the value of an indicator you want to measure in your process, or to store a category you want to use to group the values you measured in your process.

According to the type of information you want to store, you can define your business indicator as a:

  • Measure

  • Dimension

  • Counter

The type of business indicator determines the available data types you can use. Table 11-1 shows the available data types for each business indicator type.

Table 11-1 Available Data Types for Business Indicator Types

Business Indicator Type Allowed Data Types

Dimension

  • String

  • Bool

  • Time

  • Int (with ranges)

  • Real (with ranges)

  • Decimal (with ranges)

Measure

  • Int

  • Real

  • Decimal

Counter

  • Int


Measures

Measures store the value of a key performance indicator that you can measure. Measures only allow data types that are continuous. You must use them with measurement marks. The deal amount and the discount percentage are examples of measures in the Sales Quote process.

Dimensions

Dimension store the value of a key performance indicator that you can use to group the values of the measure business indicators in your process. If you use a continuous data value to define a dimension, then you must add it at least one range. The Process Analytics database only stores the range value if the data value is a continuous one. The deal range and the industry type are examples of dimensions in the Sales Quote process.

Counters

Counters keep track of the number of times an instance completes a certain activity. You must use them with counter marks. The counter variable does not store the actual value, its value is always 1. The value that specifies the number of times an instance completes an activity is updated directly in the Process Analytics databases. To monitor the value of a counter business indicator, you must create a dashboard based on a counter mark that is configured to track this counter business indicator. For more information on how to configure counters, see Section 11.6, "Adding Counters to the Activities in a Process".

11.4.1 How to Add a Business Indicator to a Project

Business indicators enable you to define the key performance indicators to measure in your project.

To add a business indicator to a project:

  1. In the BPM Project Navigator, select the project.

  2. In the Structure Window, right-click Business Indicators and select New.

    The Create Business Indicator dialog appears.

  3. Enter a name to identify the business indicator.

  4. In the Business Indicator list, select a type of business indicator.

  5. From the Type list, select a data type.

    Note:

    The available data types vary according to the type of business indicator you selected. Table 11-1 shows the available data types for each business indicator type.
  6. If you selected a continuous data type and selected Dimension as its business indicator type, then add at least one range.

  7. Optionally, check Auto Initialize to initialize the business indicator with a default value.

    For more information about default values, see Section 8.2.2, "Default Values".

  8. Click OK.

    The Create Business Indicator dialog closes and saves the business indicator you created.

11.4.2 What Happens When You Add a Business Indicator to a Process

You can use the business indicators that you added to your project to store data about the processes you want to monitor.

Some business indicators require you to add different artifacts to your process to indicate the BPMN Service Engine must store their values in the Process Analytics databases.

  • Dimensions

    The BPMN Service Engine automatically stores the data in the dimension business indicators in the pre-defined and custom sampling points defined for your process.

  • Measures

    Pre-defined measures are always measured in every flow element that is configured to produce sampling points.

    You can add a measurement mark to specify the point, or process sections where you want the BPMN Service Engine to measure and store a custom business indicator of type measurement. For information on how to add a measurement mark, see Section 11.5, "Adding Measurement Marks to Processes".

  • Counters

    You must add a counter mark to those activities where you want the BPMN Service Engine to store the value of the counter business dimension. For information on how to add a counter mark, see Section 11.6, "Adding Counters to the Activities in a Process".

11.5 Adding Measurement Marks to Processes

Measurement marks enable you to measure a business indicator of type measure at a certain point in the process or in a section of the process.

You can use one measurement mark to measure multiple business indicators.

Measurement marks store the following data into the Process Analytics databases:

  • The value of the process default measures

  • The value of the measure business indicators associated to that measurement mark

  • The value of the dimensions defined in the process

When storing the value of a measure business indicator, the BPMN Service Engine also stores the value of the dimensions you defined in your process. Later on, when you build the dashboards to monitor your process, you can use these dimensions to group the values into different categories. For example, in the Sales Quote process you might want to view the total amount of quotes approved by region.

The types of measurement marks you can define are:

  • Single Measurement

  • Interval Start

  • Interval Stop

Single Measurements

If you defined measure business indicators in your process, then you must add single measurement marks in those points in the process where you want to measure those business indicators. Single measurement marks indicate the BPMN Service Engine that at that point in the process it has to store the value of the measure business indicators associated to that measurement mark. The BPMN Service Engine also stores the values of the default process measures and the dimension business indicators at this point in the process.

Figure 11-2 Single Measurement Mark

Description of Figure 11-2 follows
Description of "Figure 11-2 Single Measurement Mark"

Interval Start and Interval Stop

If you want to measure a business indicator in a section of your process, then you must use an interval start measurement mark to indicate the start of the section and an interval stop measurement mark to indicate the end of the section. These measurement marks enable you to measure the default business indicators or business indicators you defined in a a section of the process. Generally you use these measurement marks to monitor critical sections of your process. For example, you might want to monitor the amount of instances in a part of the process you identified as a bottle-neck.

Figure 11-3 Interval Start and Interval Stop Measurement Marks

The section of the process these measurement marks measure.
Description of "Figure 11-3 Interval Start and Interval Stop Measurement Marks"

11.5.1 How to Add Single Measurement Marks to a Process

You can use single measurement marks to measure business indicators in a specific point in your process.

To add a single measurement mark to a process:

  1. Open the BPMN process.

  2. In the Component Palette, expand the Artifacts section and select Measurement.

  3. Place the measurement mark near the sequence flow where you want to measure a business indicator. When the sequence flow turns blue, drop the measurement mark.

  4. Right-click the measurement mark and select Properties.

  5. Select Single Measurement.

  6. In the Name text-field, enter a name to identify the measurement mark.

  7. In the Business Indicators section, select a business indicator from the Available list and move it to the Selected list using the arrows between the two lists.

    Figure 11-4 show the Measurement Mark Properties dialog.

    Note:

    You can measure multiple business indicators in the same measurement mark.

    Note:

    If you do not select a business indicator, then Oracle BPM Studio displays a warning message. If you want to add a business indicator without leaving the Measurement Mark Properties dialog, then you can click the New button under the Selected list.
  8. Click OK.

Figure 11-4 Measurement Mark Properties Dialog

Description of Figure 11-4 follows
Description of "Figure 11-4 Measurement Mark Properties Dialog"

11.5.2 What Happens When You Add a Single Measurement to a Process

When the BPMN Service Engine runs a single measurement mark, it stores the current value of the following business indicators in the Process Analytics databases:

  • Business indicators associated to the measurement mark

  • Default measurements

  • Dimensions defined for the process

11.5.3 How to Measure a Business Indicator in a Process Section Using Measurement Marks

You can use measurement marks to define a section in your process in which to measure certain business indicators.

To measure a business indicator in a process section:

  1. Open the BPMN process.

  2. In the Component Palette, expand the Artifacts section and select Measurement.

  3. Place the measurement mark near the sequence flow where the section of the process begins. When the sequence flow turns blue, drop the measurement mark.

  4. Right-click the measurement mark and select Properties.

  5. Select Interval Start.

  6. In the Name text-field, enter a name to identify the measurement mark.

  7. In the Business Indicators section, select a business indicator from the Available list and move it to the Selected list using the arrows between the two lists.

    Note:

    You can measure multiple business indicators in the same measurement mark.

    Note:

    If you do not select a business indicator, then Oracle BPM Studio displays a warning message. If you want to add a business indicator without leaving the Measurement Mark Properties dialog, then you can click the New button under the Selected list.
  8. Click OK.

  9. In the Component Palette, expand the Artifacts section and select Measurement.

  10. Place the measurement mark near the sequence flow where the section of the process ends. When the sequence flow turns blue, drop the measurement mark.

  11. Right-click the measurement mark and select Properties.

  12. Select Interval Stop.

    The Start Measurements list replaces the Name text-field.

  13. From the Start Measurements list choose the measurement mark that indicates where the process section begins.

  14. Click OK.

11.5.4 What Happens When You Measure a Business Indicator in a Process Section Using Measurement Marks

The BPMN Service Engine stores the values of the measure business indicators associated with the pair of measurement marks to the Process Analytics databases. It also stores the values for the dimensions and default measures for that process section. The default measures that contain average values provide information about the average value for that section of the process.

11.6 Adding Counters to the Activities in a Process

Counter marks enable you to update the value of the counter business indicators defined for your process.

A counter mark may update multiple counter mark business indicators.

When a token arrives at an activity that has a counter mark defined, the BPM Service Engine updates the value of its associated counters in the Process Analytics databases. Each time the BPM Service Engine updates a counter business indicator, it adds one unit to the current value.

Note:

The actual value of the counter variable is stored in the Process Analytics databases. You must not use the counter variable in your process to perform any calculations because its default value never changes. The value of the counter variable is always equal to 1.

Generally you use counter marks for the following:

  • Auditing: The number of activities the instance completed combined with other performance measurements are important information for auditing the process.

  • Identifying performance issues: You can use a counter to identify performance issues within your process. Your process might be taking longer than expected because the instances are following a different path than expected or because the loop in an activity is running more times than it should. You can identify these situations by comparing the actual number of completed activities to the number you expected.

  • Identifying the process path the instance followed: You can mark different paths using different counter business indicators. When the instance reaches the end of the process, the path the instance followed has the greatest number of completed activities.

Typically you define one counter business indicator for each of the process paths you want to monitor. Then you add counter marks in all the activities that are part of that process path. Finally you associate the counter business indicators that correspond to the paths that activity is part of, to the counter mark.

11.6.1 How to Add a Counter Mark to an Activity in a Process

You can add a counter mark to an activity to track the number of times the instance runs this activity.

To add a counter to an activity in your process:

  1. Add a business indicator of type counter to your process.

    For more information on how to add a business indicator, see Section 11.4, "Adding Business Indicators to Projects".

  2. Open the BPMN process.

  3. Right-click the activity to which you want to add the counter.

  4. In the Available list, select the counter business indicator where you want to store the data. Move it to the Selected list using the arrows between the two lists.

    You can add multiple counter business indicators to the same counter mark.

  5. Click OK.

11.6.2 What Happens When You Add a Counter Mark to an Activity in a Process

When the BPMN Service Engine runs an activity with a counter mark, it increases the value of the counter business indicator associated to that counter mark by one, in the Process Analytics databases.

11.6.3 How to Delete a Counter Mark

You can delete a counter mark that you do not use or need.

To delete a counter mark:

  1. Open the BPMN process that contains the counter mark.

  2. Right-click the activity that contains the counter mark.

  3. Select Delete Counter Mark.

11.6.4 What Happens When You Delete a Counter Mark

After you remove the counter mark, when you right-click the activity it does not show the option Delete Counter anymore. Instead, it shows the option New Counter Mark.

Because you removed the counter mark, when an instance passes through that activity the BPMN Service Engine does not increase the value of the counter business indicator in the Process Analytics databases.

11.7 Configuring Cubes Generation in a Project

Oracle BPM provides a set of pre-defined cubes you can use to monitor the activity of your processes. These pre-defined process cubes are enabled by default.

If cubes are enabled then when the BPMN Service Engine runs the processes in your project, then it populates the cubes. You can then view the data stored in these cubes using the dashboards provided by the BPM WorkSpace application. For more information about how to build and view dashboards in BPM WorkSpace, see Oracle Fusion Middleware User's Guide for Oracle Business Process Management.

11.7.1 BPM Process Cubes

Process cubes enable process analysts to analyze the process metrics from different perspectives. The perspectives are defined when defining the process. Measures are numeric facts that you can categorize by dimensions. For example, in the Sales Quote example process, you must define a dimension for the product and a measure for the deal amount to analyze the deal amount by product.

BPM Process Cubes support the following dimensions:

  • Activity

  • Process

  • Participant

They also support the following measures:

  • Completion time for a specific process

  • Completion time for a specific activity

  • Number of tasks by participant

Process cubes store the data related to activities in the Task Performance (BPM_CUBE_TASKPERFORMANCE) and Workload(BPM_CUBE_WORKLOAD) tables. It stores the data related to processes in the Process performance (BPM_CUBE_PROCESSPERFORMANCE) and Workload(BPM_CUBE_WORKLOAD) tables.

The workload table contains data about the currently active activity and process instances. The Task and Process performance tables contain data about completed activities and processes respectively.

The data for task and process performance is computed and persisted when an activity or task is completed. The data for workload is calculated and persisted using a timer based on the configuration of the cubeUpdateFrequency property. You can specify the value for the cubeUpdateFrequency property using Enterprise Manager.

All the dimensions and measures are stored for the enabled out of the box sampling points. Selected dimensions, measures and counters are stored for user-defined sampling points.

11.7.2 How to Configure BPM Process Cubes Generation in a Project

If you use BPM process cubes to monitor the performance of your project, then you must enable the generation of the process cubes at developing time. When you deploy your application Oracle BPM uses this configuration to enable BPM Process Cubes.

To enable BPM process cubes in a Project:

  1. In the BPM Project Navigator, right-click the project.

  2. Select Project Preferences.

  3. In the Category tree, select Process Analytics Summary.

  4. In the Process Analytics Summary section, click the Data Targets tab.

  5. Select Enable Cubes to enable cubes generation, or deselect it otherwise.

  6. Click OK.

11.7.3 What Happens When You Enable BPM Process Cubes in a Project

The BPMN Service Engine populates the pre-defined cubes each time it runs an activity or completes a process. The engine uses the sampling points configuration you defined to populate the cubes. If you configure a process not to generate sampling points, then the BPMN Service Engine does not store this information in the pre-defined cubes.

11.8 Enabling Oracle BAM in a Project

You can Oracle BAM to monitor the activity of the process in your project, leveraging the capabilities of Oracle BAM while using Oracle BPM.

You can use Oracle BAM with the pre-defined cubes, or you can choose to disable the latter.

For more information about Oracle BAM, see Part X Using Oracle Business Activity Monitoring in Oracle Fusion Middleware Developer's Guide for Oracle SOA Suite.

11.8.1 How to Enable Oracle BAM in a Project

Before enabling Oracle BAM in your project, you must configure Oracle BAM correctly. See Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite, for information on how to configure Oracle BAM to work with Oracle BPM.

To enable Oracle BAM in a project:

  1. In the BPM Project Navigator, right-click the project.

  2. Select Project Preferences.

  3. In the Category tree, select Process Analytics Summary.

  4. In the Process Analytics Summary section, click the Data Targets tab.

  5. Select Enable BAM.

  6. From the JNDI Name BAM Adapter list, select the name for the BAM adapter.

    The BAM Adapter is labeled as eis/bam/soap. The JNDI name specifies the connection pool the BAM Adapter uses.

  7. If you want the BAM adapter to process the requests in batch, then you must select In Batch.

  8. In the Data Objects Path text-field, enter the path to the pre-installed BAM data objects.

    The default path is /Samples/Monitor Express.

  9. Click OK.

11.8.2 What Happens When You Enable Oracle BAM

When you run a process that has Oracle BAM enabled the BPMN Service Engine populates Oracle BAM database with information about the business indicators measured in that process. The BPMN Service Engine generates this information based on the Sampling Points preference you defined in your project.