 | Level: Introductory Christina Lau (clau@ca.ibm.com), Distinguished Engineer, IBM Shili Yang (shiliy@ca.ibm.com), Advisory Software Developer, IBM Bhadri Madapusi (bhadrim@ca.ibm.com), Advisory Software Developer, IBM
14 May 2008 Part 4 of this series shows you how to use WebSphere Business Monitor to
monitor business processes running on both WebSphere Process Server and FileNet P8.
You can correlate events from both platforms using a monitor model and use WebSphere
Business Monitor dashboards to view the status of complete transactions in real time
with metrics and KPIs.
Introduction
Part 3
of this series showed you how to create and deploy a BPM solution that can run on
both WebSphere Process Server (Process Server) and FileNet P8. Using standard Web
services techniques, a Process Server process can invoke a FileNet process
seamlessly, and use the FileNet content engine to create, manage, and store
documents or business objects that are associated with a business process. In Part
4, you'll learn how to use WebSphere Business Monitor V6.1 (Monitor) to monitor a
business process that runs on both Process Server and FileNet. We'll describe the
overall topology, how events are emitted from both platforms, and show you how to
correlate them by authoring a monitor model.
How it works
Figure 1 shows a view of the overall architecture. The FileNet P8 process engine
records events associated with the running processes to the P8 event log database.
The P8_BPM_CBE_Adaptor reads the P8 database and converts the data to Common Base
Events (CBEs), then sends them to the Common Event Infrastructure (CEI). Process
Server components such as BPEL emit CBE events directly to the CEI.
A monitor model correlates events coming from the multiple sources. The monitor
model defines business measures, such as metrics and key performance indicators
(KPIs), and their dependencies on the incoming events. Conditions that require
business actions can also be captured in the monitor model.
The Monitor database contains meaningful metrics aggregated by the monitor models
deployed on the Monitor server. The Monitor dashboards use Web 2.0 technologies to
display business performance data dynamically in highly customizable views such as
the Instances, KPI, Dimensions and Report views.
Figure 1. FileNet, WebSphere
Process Server and WebSphere Business Monitor integration
Setting up the
environment
Your environment should contain the standard installation for Process Server,
Monitor, and IBM FileNet P8 Platform (FileNet). In order to integrate FileNet with
Monitor, you need to install the FileNet BPM CBE Adaptor to the Monitor server, as
shown in Figure 2. This involves creating the database, work manager, and JNDI
settings required by the CBE adapter. For more information on how to deploy the
FileNet BPM CBE Adaptor, refer to the Process Engine Administration section of the
IBM FileNet P8 Platform Product Documentation.
Figure 2. P8 BPM CBE Adaptor
running on the Monitor server
Configuring the FileNet
and Process Server processes to generate events
In order for Monitor to present meaningful real-time information about the
business processes that are running, the processes must generate meaningful
business events as each activity executes. For processes running on Process
Server, use the event monitor in WebSphere Integration Developer (Integration
Developer) to enable event generation for the BPEL elements you want to monitor.
Figure 3 shows the Event Monitor pane for the Process Claim human task. Select
Full to include the business object attributes in the emitted event.
Figure 3. Integration Developer
event monitor
For processes running on FileNet to include any of the business object attributes
in the emitted event, you must add them as Data Fields in the Event Log
Properties. In the FileNet workplace, select Admin => Process
Configuration Console to open the Process Configuration Console. Select the
Event Logs folder, as shown in Figure 4, and double-click to open
DefaultEventLog.
Figure 4. Open event log
properties
The Event Log Properties view opens. Use this view to add any additional
user-defined attributes that you want to have emitted in the CBE. In our example,
we want to correlate FileNet events with BPEL events so that we can associate the
FileNet ArchiveClaim workflow with the Process Server SimpleClaim BPEL process. To
do this, we'll add the ClaimNumberRep on the Data Fields tab of the Event
Log Properties, as shown in Figure 5. Notice that the data field name matches the
data field name defined in the workflow properties of the ArchiveClaim workflow
(see
Part 3).
This enables the claim number used in the ArchiveClaim workflow to be included in
the CBE that is emitted from FileNet and used for correlation later.
Figure 5. Add ClaimNumberRep as a
data field in FileNet
Correlating events using
the monitor model
A single monitor model is used to handle and correlate events generated from both
the Process Server and the FileNet processes. The monitor model receives events
from both run-times, correlates them, and records metrics that can be used to
track the status of the processes. Within the monitor model, a number of
monitoring contexts are created to collect the data for the process or activity
that it is watching, by extracting values from the incoming events. Listing 1
shows the monitoring contexts and their parent-child relationships. These contexts
and their relationships are modeled after the process and activity relationships.
For example, the ExpressClaim monitoring context gathers data about the Express
Claim process running on Process Server, and the ArchiveClaim monitoring context
gathers data about the Archive Claim processing running on FileNet.
Listing 1. Monitoring contexts and relationships
SimpleClaimProcess
AccessClaim
ExpressClaim
Assign Insurance Adjuster
Process Claim
ArchiveClaim
HighTouchClaim
|
At run-time, a monitoring context instance is created for each object that is
being observed. When an event arrives, attributes in the event are used to locate
the monitoring context instance. To determine which monitoring context instance an
event should go into, you have to set up a correlation expression at authoring
time. Figure 6 shows an example of how to create a correlation expression for the
ExpressClaimENTRY inbound event. This event is designated for the ExpressClaim
monitoring context instance and its uses Process Server-generated event
attributes, such as ECSParentID and
ECSCurrentID to do the correlation. You can use
system-generated event attributes effectively in this case, because both
SimpleClaimProcess and ExpressClaim are BPEL processes running on Process Server.
Figure 6. Correlation using
system-generated IDs
In other scenarios, you might need more control of correlation. In those cases,
you can design your correlation expression using your own event attributes. Figure
7 shows an example of a correlation expression that was created for the
ArchiveClaimEntry inbound event. This event is designated for the ArchiveClaim
monitoring context instance and uses the user-defined
Claim_Number attribute to do the correlation. The
reason for this is that ExpressClaim is running on Process Server and ArchiveClaim
is running on FileNet, and there are no system-generated event attributes that can
correlate the two. The claim number is a unique ID specific to this application,
and can be used to reliably correlate the end-to-end transaction regardless of
which run-time it is executing on.
Figure 7. Correlation using
user-defined ID
Viewing events using Monitor
dashboards
Monitor enables users to monitor and optimize their business processes in
real-time. Through visual dashboards, users can receive immediate notification
based on alerts they set, and then take appropriate actions. Using the metrics and
KPIs defined in their monitor models, users can proactively monitor the critical
aspects of their processes.
Figure 8 shows the Monitor dashboard Instances view for the Simple Claim Process,
showing three completed instances.
Figure 8. Simple Claim Process
Instances view (Process Server)
If you select the first instance (Claim Number = 100) and select the ExpressClaim
drill-down, the corresponding Express Claim process instance opens, as shown in
Figure 9. As you recall, the Express Claim Process is running on Process Server.
The Express Claim Process Instances view shows you how long it takes to complete
this process.
Figure 9. Express Claim Process
Instances view (Process Server)
If you select the ArchiveClaim drill down, the corresponding Archive Claim
Process instance opens, as shown in Figure 10. The Archive Claim Process is
running on FileNet. The view displays the approval status of the claim.
Figure 10. Archive Claim Instances
view (FileNet)
By correlating events that are emitted from multiple engines, the Monitor
dashboards give you visibility into your end-to-end processes regardless of where
they are running.
Exporting monitoring
metrics to Modeler
After the claim process executed for a while, you can export the monitor values
using the Export Values view and import the resulting XML into Modeler. Figure 11
shows the actual processing time for the three tasks. By using a single monitor
model, you can calculate the processing time for each task regardless of which
run-time it is executing on, and see a consistent real-time view to the business.
Figure 11. Monitor metrics
imported into Modeler
Summary
This article concludes our four-part series showing you how you can use WebSphere
Business Modeler V6.1, WebSphere Integration Developer V6.1, IBM Lotus Forms 3.0,
WebSphere Process Server V6.1, IBM FileNet P8 4.0.2, and WebSphere Business
Monitor V6.1 to create, to deploy and monitor a sophisticated business process
managementsolution. Such a solution makes use of key IBM BPM capabilities
including modeling, simulation, business rules, process execution, content
management, human interactions, Web services, and system connectivity. As you've
learned in this series, IBM's comprehensive set of BPM products provide a complete
integration offering built entirely on a service-oriented architecture.
Download | Description | Name | Size | Download method |
|---|
| Sample artifacts | download.zip | 13.7KB | HTTP |
|---|
Resources -
Business Process Management with SOA, Part 1: Gathering monitoring metrics to analyze your business process
(developerWorks 2007): Part 1 shows you how to use WebSphere Business Monitor and
WebSphere Business Modeler to analyze monitored data to help identify processes
that need improvement.
-
Business
Process Management with SOA, Part 2: Improving your business process with business rules, forms and content management
(developerWorks 2008): Part 2 shows you how to use some of the new features in
WebSphere Business Modeler V6.1 to enhance your business process definitions so
that process owners can model their end-to-end business processes regardless of
where they are deployed.
-
Business
Process Management with SOA, Part 3: Combining process execution, content management and user interactions
(developerWorks 2008): Part 3 of this series shows you how to integrate a
long-running business process running on both WebSphere Process Server and FileNet
P8. The business process includes multiple steps that involve system and human
interactions as well as structured and unstructured content.
-
IBM FileNet P8 Platform Product Documentation
-
Event Correlation Options for Business Activity Monitoring and WebSphere Business Monitor
V6.0.2
(developerWorks 2007): This article discusses the different correlation options
that are available with WebSphere Business Monitor 6.0.2, and looks at the
advantages and disadvantages of each option. Learn how built-in application or
component level events can be easily correlated with custom events specific to
certain instances of a process, or more generally, of any service implementation.
-
FileNet Business Process Manager:
Get product information, including features and benefits.
-
Build BPM applications using FileNet, Part 1: A guided tour to content and process modeling with the FileNet P8 platform
(developerWorks 2007): This is the first in a series of three articles introducing
you to the process of building Business Process Management (BPM) applications
using the IBM FileNet P8 platform and the Business Process Framework (BPF).
-
developerWorks BPM zone:
Get the latest technical resources on IBM BPM solutions, including downloads,
demos, articles, tutorials, events, webcasts, and more.
-
Business Process Management enabled by SOA:
Get product information, including features and benefits.
-
WebSphere Business Modeler:
Get product information, including features, benefits, demos and trial downloads.
-
WebSphere
Business Monitor:
Get product information, including features, benefits, demos and trial downloads.
-
WebSphere Integration Developer:
Get product information, including features and benefits.
-
WebSphere Process Server:
Get product information, including features and benefits.
About the authors  | 
|  |
Christina Lau is an IBM Distinguished Engineer. She leads the BPM Architecture, Strategy and Advanced Technology Team, focusing on next-generation BPM technologies. You can reach Christina at clau@ca.ibm.com. |
 | 
|  |
Shili Yang is an Advisory Software Developer at the IBM Toronto Lab. Shili has been a member of the BPM Architecture and Advanced Technology team for the past year, focusing on the end-to-end integration aspect of the WebSphere BPM product portfolio. You can reach Shili at shiliy@ca.ibm.com. |
 | 
|  |
Bhadri Madapusi is a Software Developer working in the IBM Toronto Lab. He earned his MSc in Information Systems from BITS, India, and his MSc in Computer Science from Queens University, Canada. His interests include software modeling, design patterns, and data management. You can read Bhadri at bhadrim@ca.ibm.com. |
Rate this page
|  |