BPMN processes created in the BPM Suite can be monitored by standardized dashboard in the BPM workspace. But BAM takes the monitoring of BPMN processes one step further. BAM allows you to create more advanced dashboards and even real-time alerts. With this BAM allows you to make decisions based on real-time information gathered from your running processes. BAM has always been a part of the SOA Suite but with BPEL it is necessary to use BAM Adapters and invoke them in your process. While 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.
In order to use BAM within the BPM Suite you first have to configure your SOA server so that it knows where your BAM server is running.
Log in to your console (e.g. http://localhost:7001/console) and go to the deployments. Select the oracleBAMAdapter and go to “Outbound Connection” under the Configuration tab. There you expand “oracle.bam.adapter.adc.soap.SOAPConnectionFactory” in order to be able to select eis/bam/soap.Console configuration in weblogic for Oracle Business activiry monitoring (BAM)
Update the properties conform to your environment and then save. In order to change the values select the empty field and after you specified the value press enter in order to actually store the value. When it is the first time you configured the BAM adapter you are asked to store the configplan. It is probably wise to create a new directory for the configplan so that you can later find, change or add new configuration plans. Finish the configuration by updating the OracleBAMAdapter.
After you configured the BAM adapter you have to tell the BPM engine that you want to use BAM for your Business Indicators. You have to log into the Enterprise Manager (e.g. http://localhost:7001/em), select the SOA domain (standard soa_server1) and go to the System Mbean Browser.Select SOA server System mbean browser
There you can change the attribute that enables BAM in the BPM Suite. You can find the attribute at:
- go to the main folder named: Application Defined Mbeans;
- expand the oracle.as.soainfra.config folder;
- expand the Server:soa_server1 folder
- expand the BPMNConfig folder and select bpmn;
- delete the default value of the attribute DisableActions.
After you completed the configuration you are ready to start using BAM in combination with your BPMN processes. To use the BAM within a BPMN process you have to specify that your project (composite) has to use the BAM server for the Business Indicators instead of the default analytics. In the BPM Project Navigator right click the project in which you want to use BAM and go to the Project Preferences. Set the settings conform to your environment (see the blogpost from deltalounge for more details).Assign data to business indicators in jdeveloper (BPMN Process)
The Data Object Path refers to the folder in which your Data Object is configured on the BAM server.
Now it is time to specify the Business Indicators you want to use for your process. There are three kinds of indicators:
- Measures: Numerical values that signify a possible KPI like the declared amount of money.
- Dimensions: This has to be a finite set of values which can be used to slice your data, for example the possible outcomes of a Human Task.
- Counters: These can be used to count the amount of iterations of a loop in your process.
After you specified the indicators you have to assign data to them, this can be done by using a Script Task or the Data Association in a different task. For example if you want to group your data by the outcome of a Human Task create an indicator of the type dimension and assign the outcome of the human task to the indicator. When this is done define the moment on which the BPMN process measures your value. Select the measurement artifact and place it on the outgoing sequence flow of the activity that contains the data association. When you defined your Business Indicators and specified the measurement points, deploy your composite to the server.
Now create a Data Object in BAM which will be the container of your process information, go to the bam server (http://localhost:9001/OracleBAM). Note that it can only be used with internet explorer as other browser are not supported. Select Architect and create a new subfolder. The subfolder in which you create your data object must have the same name that you used in the project preferences (for me that is infoFormsDemo). Select the subfolder and create a new Data Object.
In order for the integration of BAM with BPM to work you have to use certain naming conventions with the Object name and the field names. This enables BAM to map the composite to the Data Object in BAM and the Business Indicators specified in the BPMN process to the specific fields in the object.
- Name of the Data Object: BI_DEFAULT_(CompositeName)_(BPMNProcessName)
- Field name: METRIC_(BusinessIndicatorName) or if the business indicator is a range indicator METRIC_RANGE_(BusinessIndicatorName)
After you created the Data Object you will notice that BAM has created several extra Data Objects, one of the new objects will have the same name only default is spelled using lower case letters. This object will be used to store the actual data and thus this object has to be used while creating your dashboards.
BAM offers a wide variety of possible dashboards:Possible dashboards in Oracle Business Activity Monitoring (BAM)
Creating dashboard can be done at the Active Studio by going to the Shared Reports and selecting “Create A New Report”. You can select a predefined Tiled Report, but the specified tiles can always be changed by adding or deleting tiles. The actual creating of a dashboard is quite straightforward and BAM offers you several options to personalize the dashboards.
For example I created the following project:Example of an Oracle Business Activity Monitoring (BAM) dashboard
In a later blog I will explain how to use alerts.Starting Oracle Business Activity Monitoring (BAM) with the BPM Suite,