Saturday Nov 21, 2015

Business Process Modelling and Business Activity Monitoring by Stefan Wörmcke


The objective of this exercise is make participants familiar how to prepare a BPM project for monitoring using BAM

Use Case Description

In this exercise participants will add measurements to a given BPM process:

Prepare BAM data structure

Open given BPM process

Enable BAM for the project

Create measurement indicators

Set measurement marks

Deploy process

Run process

Check BAM data objects

Prepare BAM data structure

First step when using BAM is to organize the data you are gathering. For this you’ll have to log into BAM (http://hostname:9001/OracleBAM):


and from the menu choose the BAM architect:


within the folder structure for data objects, create a new subfolder for storing your new data objects:


Open given BPM process

Your instructor should provide you with a file named “” Unzip the file and open the project using JDeveloper.

Select the project in the BPM navigation tree, and right click on the project to open project preferences:


Select “Process Analytics Summary” on the left hand side and select the tab “Data Targets” below:


Here you have to check “Enable BAM” and enter the folder path you created in step 1.3

Click ok and your ready to deploy your project using BAM for monitoring!

Create Measurements Indicators

First step when using BAM in a process is to define what kind of data will be measured: you have to define business indicators. The basic indicators we use in this exercise are:

Dimensions: you use dimension to group data accordingly, e.g. grouping sales by region: North, East, South, West. If you base the dimension on numbers, you have to define ranges for grouping your data, like 0 – 1000, 1001 – 10000, etc.

Measurement: here you actually define the data you are interested in: quantity of ordered items, order total in USD, etc.

Counter: counter are somehow special in BPM: for each process instance their value will be 1 when set. Counters can be used for example to check which path of a process an instance was taken

So for our demo process you will first create a counter: within the structure window of your process, expand “Business Indicators”, and right-click “counter” to create a new counter:


In the next step you’ll create two dimension:

a dimension range (“credit range”):


as you can see here, for a numeric dimension you have to define ranges for the numbers you’re interested in

a dimension “Participant”:


and finally you’ll create for measuring the amount within your process:


After completing each of the above steps, your list of business indicators should like this by now:


set measurement marks

As you have defined your indicators in the previous exercise, it’s now time set values when the process is executed.

To set dimension, you will use a script task: from the pallet, drop a script task between the start node and “review request”, and call it “Init Indicators”:


Double click the script task, got to implementation and set data associations:


drag lines from left to right to do the associations:

drag a line from “loan amount” to “credit range” to set the dimension for the credit range

drag a line from “loan amount” to “credit amount” for setting the measurement for the credit amount

drop an expression on top of “participant” and assign the value “Frontoffice” to it. Although creating reports by human tasks is a standard measurement you’ll get when using BAM in a BPM process, this step is to demonstrate how to set various dimension you may want to use in future reports

For setting counters, you will have to right click a flow object where you want to set the counter:


In the following dialog you will define which counter mark you want to set in this step.

Deploy the process

Deploying the process with BAM enabled is the same as deploying any other BPM process. The only difference is that you have to enable BAM in the project preferences before deployment.

After successful deployment, log into BAM and start BAM Architect to verify that data objects for your process have been created:


Run the process

To check if data objects of BAM will be populated, you will have to run the process. You will use Enterprise Manager Fusion Control to test the process. Log into Enterprise Manager (EM), e.g. http://hostname:port/em:


Select the BAMSample1 process in EM:


Cick on the TEST button for displaying the request form:


Enter some data for a credit request and start the process using “Test Web Service”:


This process consists of two human tasks which have to be fulfilled to finish the process. To ease testing, both activities should be assigned to the same user. This way you won’t have to login and out several times to finish the process.

So log into BPM workspace (e.g. http://hostname:port/bpm/workspace) using the credentials of the user, to whom you assigned the human tasks:


In your inbox, you’ll find the first assigned task “review request”:


Select the task in the list, click on “Actions” and approve it.

After approving the first task, you’ll find a second task in your inbox “Issue Credit”:


Like in the first part, do approve this task as well.

Now its time to check your data gathered by BAM. Start the BAM architect, and select the newly created Data Objects. Navigate around all data objects and observe the data.

Optional Exercise

Start the process several times with different data and different human tasks actions (approve or reject)

Add more business indicators to your project

Use the newly created business indicators in the project

Redeploy the project

Run the new version of the project and check the data objects


The objective of this exercise is make participants familiar how to create custom reports and dashboards

Use Case Description

In this exercise participants create a custom dashboard:

Create a dashboard

Add views to the dashboard

Format / change views

Doing a drill down into views

Learn about data objects

Create a dashboard

To create your first dashboard, you’ll have to log into BAM (http://hostname:9001/OracleBAM):


Then start active studio:


To create a new report, hit the button shown below:


First you’ll have to choose the layout for your report, in our exercise we’ll choose a format with a title bar and 4 frames for the views we will insert later:


Click on the title bar to change the name of the title, for example: Tutorial

Within the 4 frames you’ll see icons for the various views for your report. “Streaming List, Bar Chart, Range Gauge,..” are all different kind of views you can create. You can also resize the frame of each view to fit your needs.

Start creating your first view by clicking on “Bar Chart” in the upper left frame:


A wizard will start in the bottom guiding you through the definition of your view: data objects, data fields, formats, filters etc.

The first step is to define the data object for the report: navigate to the “Tutorial” folder and choose the “Component” data object, then click “Next”:


Next step is to define data fields and how we would like to group them: Choose “Component_Instance_Status” for grouping, and count the number of instances “Component_Instance_ID”:


For this report, we don’t need e.g. a filter; finish your report by clicking the corresponding button:


Before proceeding with the exercise, you should save your report. Hit “Save Report AS”, and create a new subfolder:


Enter e.g. “Tutorial” as the name for the subfolder:


and finally give a name for your report and hit “Ok”:


Let’s recap what we have done so far:

We created a new report by clicking on the corresponding icon. Then we defined where the data is located we want to use for reporting. At this point it is beneficial to make yourself familiar with the underlying data object(s) for your report. Therefor you can start the “Architect” from the Oracle BAM Start menu. For further details refer to your training material from the first BAM workshop.

For the data we want to show in the report, we’ve chosen to count the number of process instances, and group them by “Component_Instance_Status” – but why? Every instance we see in Oracle BAM can only have two conditions:

active: the process instances was started, but did not finish yet

completed: the process has finished

Now if we group the number of instances by status, BAM will count all instances with status “active”, and all instances with status “completed”. The result can be seen in our first view of our report:


Next step is to change the view type: you will change the Bar Chart into a 3D Pie Chart. Therefor you will first click on “Change View Type” as illustrated in the screenshot above

And then choose the “3D Pie Chart” diagram:


This will change the diagram into a 3D Pie Chart:


Double-click on the pie chart, and then choose “Properties” on the left hand side to change the title into “Open vs. completed request”:


Finally hit “OK” to apply your changes.

Now we will add another view. Therefor we will choose a “Bar Chart” in the upper right frame. The wizard will start, where you first define the underlying data object for the view, in our case “BI_default_BAMSample1_BAMTutorialProcess” (the actual name of the data object may vary, depending on the setup by your instructor):


This time we will group our data by credit range, so we will display the sum of credit requests for each range:


ATTENTION: at this point you have to add a filter – why? Because each time a process instance will send payload data to BAM, a new entry will be generated. So if a process contains more than one measurement marks or invocation of BAM, one process instances will have multiple entries in the data object with the same payload.

Now in order to make sure you won’t sum up the same amount multiple times for one process instance, we have to make sure we summarize over the latest entry for an instance, therefor checking the “LATEST” flag.

Click on “Create a filter”:


and then “Add Entry”. For the field, choose “LATEST”, set comparison to “is equal to” and enter “Y” as the value. When finished, hit “add entry” again:


your resulting filter should look like this by now


Click ok to finish your 2nd view.

The third view (lower left corner) will be a range gauge. Select the range gauge icon:


set the data object to “COMPONENT”:


select “Component_Running_Time_In_Min” in the middle of the gauge and in the bottom, and select “Average”:


and filter for all instances, which are completed:


Click “Ok” to finish your settings.

The resulting gauge may look like this (depending on the underlying data):


As you can see the scale doesn’t fit for our test data – the red area is around 7200 minutes, far too much for our purpose.

So we have to customize our green, yellow and read areas by customizing the low, medium and high ranges.

Double-click on the range gauge, select “Properties and set the values according to the screenshot below:


Depending on your test data, adapt values for the ranges accordingly, until you’re satisfied with the result.

By now your report should look like the screenshot below. To exit the development mode and get a preview, click on “View”:



Optional Exercise – drill down

In order to do a drill down, we will first have to define a new report with exactly one view in it. Later this report will be exchange with the current view, from which you start your drill down.

So let’s first start with creating a new report, selecting a template with one view:


Change the name to “Drill Down”, and choose a “3D Bar Chart:


As data object, choose “BI_default_xx” (name depending on your data objects):


choose to group the sum of credit amounts by range:


and create a filter:


to only select the latest entry:


We will start the drilldown from our previously created report, from the “active vs. completed requests” view in the upper left corner.

Depending from which part of the view (active or completed) the user will start the drill down, we will have to pass this information to the report being called.

Therefor we will add another filter, the field we need here is “Component_Instances_Status”. To define the parameter, click on “Options”:


Choose “New Parameter Prompt”:


Give your parameter a meaningful name (e.g. “parameter_status”) , select “Use one of the values below (parameter) and then choose “All”:


Now your filter should look like this:


Now we can save the new report, and switch back to our first report. Edit the report, and double click the 3D Pie Chart in the upper left frame. Click on “Properties” and choose the tab “Drilling”.

To define your Drilling Target (the new report), click on “New Target”:


select “replace the current view”:


click on next

Clicke on “Browse” to select your new report”:


click next, and in the final page set the “Component_Instance_Status” to the newly created parameter (e.g. “parameter status”):



Stefan Wörmcke
Stefan Wörmcke is a Principal Sales Consultant at Oracle Switzerland focusing on SOA and BPM themes. Stefan started 15 years ago at Oracle Germany as a technical consultant for SQL and Java development, Oracle iStore (internet shop application), and application development using frameworks like Struts, Oracle ADF. As one of the first Middleware Sales Consultant for Oracle in Switzerland, he was covering the whole Oracle Middleware stack for some years, and is now focusing on BPM themes, helping customer enabling BPM initiatives throughout their organization. Architecture reviews, BPM best practices and hands-on workshops for customer and partner are just a few examples of Stefans' activities to grow BPM adoption in Switzerland.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Monday Jul 14, 2014

BPEL and BPM's performance monitoring using DMS by Sylvain Grosjean

What is DMS ?
The Dynamic Monitoring Service (DMS) API allows you to add performance instrumentation to Weblogic Server and Fusion Middleware (BPM, BPEL, Rules, OSB, Human Tasks, B2B...). During runtime DMS collects performance information, called DMS metrics that developers, system administrators, and support analysts use to help analyse system performance or monitor system status.
These performance metrics captured by DMS are available via the Spy Servlet and via MBeans.

BPEL/BPM Threading Model's Review :

Dispatcher system Threads : allocated to process system dispatcher messages.
Dispatcher invoke Threads :
(synchronous invoke) allocated to process synchonous requests, For each payload received, the thread will instantiate a new instance invocations.
Dispatcher Engine Threads :
(asynchronous activities : receive in mid-process, on Alarm, onMessage, wait) accolated to process asynchronous messages (durable process).

We can tune these values through OEM : Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki

Monday Feb 24, 2014

Monitoring large flow traces with Oracle SOA Suite by Martin Günther

End-to-end monitoring of BPEL process instances acro ss composite borders is a great feature of Oracle SOA/Business Process Management Suite 11g. It is shown in nearly every PreSales presentation and when you were used to know SOA Suite 10g or to work with other kinds of distributed, heterogenous systems it is a real improvement.

But when you implement large process chains you might realize that the newly won process transparency can raise new challenges. Imagine you have a root process which creates several instances of sub-processes. In such a case without doing any extra work you will get one flow trace for the process and all of its sub-process instances. For large process chains you need to consider the following facts:

  • Transparency: Although it shows an end-to-end view of the whole execution tree, trying to find a faulted sub-process might be a real challenge. It doesn’t matter if you start the search from the root process instance or from one of the sub-processes - the flow trace always displays all components of the execution context. When you click on a sub-process and you go back to the flow trace you might have to expand all child nodes again and again.
  • DataSetTooLargeException:  When your flow trace becomes longer and longer, you will observe, that there is a maximum size for the audit trail that can be displayed by Enterprise Manager. Usually it results in a java.lang.RuntimeException: Requested audit trail size is larger than threshold … chars
    For large execution trees, sub-process instances might not be displayed or you might not be able to see things in detail.
  • Low Memory: It is not only the visible representation of your instance, which struggles. A huge audit trail implicitly means that your needed memory allocation for executing your process instance grows. It can grow to this extent that your process instance crashes because of running low in memory.

Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki Mix Forum

Thursday Nov 01, 2012

Oracle BPM enable BAM by Peter Paul

BPMN processes created in the BPM Suite can be monitored by standardized dashboard in the BPM workspace. Besides that there a default views to export Oracle BPM metrics to a data warehouse. And there is another option: BAM – Business Activity Monitoring. BAM takes the monitoring of BPMN processes one step further. 01 BPM enable BAM select project preferences

BAM allows you to create more advanced dashboards and even real-time alerts. BAM enables you to make decisions based on real-time information gathered from your running processes. With BPMN processes you can use the standard Business Indicators that the BPM Suite offers you and use them to with BAM without much extra effort. However you have to enable BAM in BPM processes. Read the full article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum

Wednesday Oct 24, 2012

User Experience Monitoring with Enterprise Manager Cloud Control 12c and Real User Experience Insight 12R1 Demo Now Available!

For access to the Oracle demo systems please visit OPN and talk to your partner expert

We are pleased to announce the availability of the Oracle real user experience Insight demo that showcases some of the key capabilities of user experience monitoring. This demo specifically focuses on business reporting, integrated performance diagnostics, tracking of customer journey’s through RUEI’s userflow tracking capabilities and it’s key performance Iidicators tracking and configuration.

Demo Highlights The demo showcases the following capabilities of real user experience Insight.

  • Application-centric dashboard
  • Integration with Oracle Enterprise Manager 12c – JVMD, ADP and BTM
  • Session diagnostics and user session replay
  • Monitoring through “Key Performance Indicators” (KPI) --- create alerts/incidents
  • FUSION Application centric dashboards & integrated BI

Demo Instructions Go to the DSS website for Oracle Partners. On the Standard Demo Launchpad page, click on the link “Real User Experience Insight 12c (Aug ‘12)” (tagged as “NEW”), under the “Applications Management” section. The demo launchpad page contains a link to a detailed demo script with instructions on how to show the demo.

BPM for Apps: BPM for EBS Demo available
For access to the Oracle demo systems please visit OPN and talk to your Partner Expert

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum



« November 2015