Вы находитесь на странице: 1из 13

Comparing IBM Business Process Manager

dashboards to IBM Business Monitor


Kip Harris (hkip@us.ibm.com)
Technical Consultant
IBM

24 June 2015

Sameh Nasef (samehn@ae.ibm.com)


BPM Specialist
IBM
Solution architects can add custom monitoring to an IBM Business Process Manager (BPM)
solution with either the tools built into the IBM BPM product or by adding the IBM Business
Monitor product to the solution. This tutorial explores these two alternatives by showing how to
develop custom dashboards for a sample business scenario. It discusses findings and makes
recommendations on selecting the best fit for your situation.

Introduction
Business monitoring systems provide visibility into the work that is performed in an enterprise.
These views of time and costs enable stakeholders to quickly address problems, make informed
decisions, and improve work methods. Because business process management systems
orchestrate work, it follows that monitoring is a key component of any business process
management solution.

Try the Workflow service


Create long-running, stateful workflows that orchestrate tasks and services with synchronous
or asynchronous event-driven interactions with the Workflow service from Bluemix. Try it for
free!

IBM Business Monitor is among the best available technologies for business monitoring in
enterprise solutions. However, with the significantly improved dashboards that are built into IBM
BPM V8.5, many practitioners have asked how to recognize when these built-in capabilities are
sufficient and when the additional IBM Business Monitor product is called for. This tutorial explores
these two options by working through a business scenario and examining the code artifacts. Learn
Copyright IBM Corporation 2015
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Trademarks
Page 1 of 13

developerWorks

ibm.com/developerWorks/

insights that are helpful for evaluating which design approach is most appropriate for different
kinds of scenarios.
You should already have general familiarity with the IBM BPM product and process definitions
that are based on Business Process Modeling Notation (BPMN). This tutorial provides brief
descriptions of the monitoring capabilities of both IBM BPM and IBM Business Monitor.

Scope
The discussion in this tutorial focuses only on monitoring for IBM BPM process applications. IBM
BPM, like many other software products, has some built-in monitoring capabilities. However,
there are a number characteristics that are easy to assess at the start of a project that can quickly
identify when IBM BPM built-in monitoring is not a match for the needs of a particular use case.
Whereas IBM Business Monitor is a general purpose monitoring solution that scales to provide
integrated views of the business activity across an entire enterprise, the same is not true for IBM
BPM for the following reasons.
The IBM BPM built-in monitoring features are designed for monitoring the processes running
on just one server cluster instance. It's not possible to monitor the business activity of other
applications or remote servers (either IBM BPM or other technology), or to monitor events
implemented in Business Process Execution Language (BPEL) technology sub-flows in IBM BPM
Advanced. If your project requires any of these features, then IBM Business Monitor is both a
good solution and the only choice among all the IBM monitoring technologies. This discussion
explores only the question of using built-in IBM BPM monitoring capabilities or IBM Business
Monitor with your IBM BPM applications. IBM BPM-based solutions are the only area where the
two technologies overlap.

Business scenario code sample


The scenario in this tutorial models a public medical clinic attached to a hospital. The code sample
provides two monitoring implementations: one built using the built-in Dashboards toolkit, and the
other built with IBM Business Monitor. The BPMN model depicted in Figure 1 shows the process.

Figure 1. BPMN diagram of process flow through a medical clinic

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 2 of 13

ibm.com/developerWorks/

developerWorks

The solution needs to serve at least two groups of stakeholders. The first group includes the
nurses, doctors, and clinic managers, who are responsible for daily operations. These teams
want to see that the most urgent cases are being handled the most quickly, and they want to
receive notifications when wait times exceed expectations. They need to see which colleagues
are most over-burdened and where there might be extra capacity. For these purposes, these
stakeholders are interested only in cases that are currently in progress. These teams are engaged
in "operational" user stories, because the stakeholders are working with the in-flight processes.
A second category of stakeholders is responsible for improving work methods, strategic planning
and investments, and effective overall operations. These analysts and executives want to spot
and analyze trends, identify relationships, and gain deeper insights into operations. They are
interested in the performance characteristics of a large number of processes, both in-progress and
completed, over historical time periods. This group of stakeholders is engaged in "analytical" user
stories.
This tutorial illustrates that the dashboards technology built into IBM BPM often meets the
operational IBM BPM user needs. IBM Business Monitor, in contrast, provides even greater
capabilities for the operational user (often where advanced customization is needed), but IBM
Business Monitor is especially well suited for the needs of the analytical worker.

Functional capabilities
A few definitions are needed to provide a vocabulary for discussing the capabilities in each
technology.
A metric is a holder for one piece of business information. Metrics in the example in this tutorial
include a patient's wait time, the location of the treatment facility, the diagnosis, and some cost
information. The term fact is sometimes used to describe this idea in other product contexts.
IBM BPM captures some of these metrics automatically, and other metrics can be captured if
specifically tagged by the process developer.
A dimension is one grouping of the metrics for reporting or analysis. For example, a stakeholder
might want to see the current cases categorized by facility location. Time is another commonly
used dimension.
It's often useful to organize one dimension into a hierarchy of levels. For example, a location
dimension might be further decomposed to region, state, and city. These levels enable a user to
drilldown to successively more granular information.
A measure, sometimes called an aggregation, is a calculation based on a metrics. For example, a
stakeholder might want to see the average wait time for a patient, or the total number of patients
that are currently waiting to see a doctor. A report normally combines at least one dimension with
some measure in a visualization.
Dimensional analysis describes the act of evaluating multiple aspects of a business operation
against performance measures. For example, a stakeholder might want to explore average wait
times categorized by facility, cost, and patient outcome.
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 3 of 13

developerWorks

ibm.com/developerWorks/

A key performance indicator (KPI) is a measure of a critical success factor. For example, a
manager might want to manage the clinic so that waiting time for certain classes of cases does not
exceed some threshold. KPIs are often monitored in real time to manage an operation to a service
level agreement (SLA).

Implementing user stories with IBM BPM dashboards


IBM BPM provides built-in visualizations, or dashboards, for the most common process monitoring
use cases. The built-in IBM BPM reporting provides summary and detail information on process
and worker status. Most of the status information concerns current workload counts and on-time
versus past-due status. Figure 2 shows one example. Two short videos that demonstrate these
features are available at IBM BPM V8.5 Process Performance Dashboards by Gerhard Pfau and
IBM BPM V8.5 Team Performance Dashboards by Gerhard Pfau.

Figure 2. IBM BPM example dashboard

A filtering feature lets you select subsets of processes or tasks that meet some search criteria.
A dashboard user also can drill down through the summary graphs for more detailed information
on particular cases. However, these graphical dashboards show status only with respect to
the predefined measures, that is, task and process aging and the number of task and process
instances.
In the experience of the IBM BPM team, the features provided by these predefined measures in
the built-in dashboards cover many of the most common use cases for the operational stakeholder.
However, some custom development is needed if the stakeholders want any of the following
kinds of features in their reporting. The following list includes examples but is not meant to be a
complete list.
Define new measures that are not already defined. For example, a stakeholder wants to see
the costs of different categories of staff or equipment.
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 4 of 13

ibm.com/developerWorks/

developerWorks

Customize the visualization. For example, a stakeholder wants costs represented as a


stacked bar chart.
Aggregate charts into a custom layout. For example, your organization has three branch
facilities in three locations. The stakeholders ask you to create a screen with three Process
Status charts, displayed three across, with one chart showing status for each location.
Define a custom appearance, such as the type of graphic, or the layout of the different charts
and graphics, or styles and colors.
Building custom reports requires two things: access to performance data, and graphical user
interface programming tools. IBM BPM V8.5 introduced the Dashboards toolkit to provide an
application programming interface (API) to support both data access and graphics. Prior to
IBM BPM V8.5, developers would typically access the product's Performance Data Warehouse
for performance and business data and use third party Javascript libraries to create graphics
(for example, the dojox.charting library). Depending on the use case, direct SQL query to
the Performance Data Warehouse might still be simpler and sometimes faster for retrieving
performance data. The sample code, which you can extract from the code_sample.zip file in the
Downloads section, explores both approaches to data access.
In the sample code, the Dimensional Report human service implements a custom dashboard. It
first retrieves performance data using the TWProcessPerformanceMetric Javascript object, which
is new in IBM BPM V8.5. Note that this approach provides information only for in-flight processes.
The sample code exercises the alternate data retrieval approach by performing SQL queries
against the Performance Data Warehouse in the Get data from PDW service. The data retrieved
by both approaches is eventually moved into a ChartData business object, which is the correct
data type required for subsequent graphics methods. Finally, the top level dashboard creates
four charts by laying out four instances of the Chart graphics object. Chart is one of a collection
of graphics objects provided in the Dashboards toolkit. The application developer constructs
graphical dashboards with the same user interface (UI) framework that is used for building IBM
BPM human services (called coaches), and the end result is easily added to the Process Portal.
Figure 3 shows one rendering of the custom dashboard.

Figure 3. Custom dashboard implemented by the downloaded example code

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 5 of 13

developerWorks

ibm.com/developerWorks/

The programming effort to implement a custom dashboard can be relatively straight-forward,


but only to the extent that the desired custom reports align with the visual paradigm of the
Dashboards toolkit. For example, if the application requires a summary view that shows active
status summaries in a particular layout, then the developer could build that view relatively easily.
However, custom development using the Dashboards toolkit also requires working with the
following constraints:
The development challenge becomes increasing complex when you work with measurements
and dimensions not supplied by the built-in toolkits, or you are working with alternative
graphics, alternate layouts, or similar factors.
The dashboards are implemented inside the process application and deployed with it. Any
change to the dashboard requires a new application deployment cycle.
IT development skills in multiple areas of expertise are needed for implementation. Examples
of skills that might be needed includes familiarity with the IBM BPM coach UI framework, both
server- and client-side Javascript, and client-side CSS and graphics libraries.
Depending on the complexity of the dashboards under development, developers might need
to develop skills specific to the Process Portal behavior. For example, developers might need
to study the behavior of the Navigation Controller control that is part of Process Portal, in
order to make drill-down operations work as desired.
As previously mentioned, the performance metrics API only searches in-flight processes.
This list is meant to provide some examples of constraints and is not a complete list of all
constraints.
In summary, the performance data and graphics objects provided by the Dashboards toolkit align
with needs of the process worker associated with operational user stories. The further your use
case drifts from the paradigm implemented in the Dashboards toolkit, the more work you face in
developing custom dashboards.

Implementing user stories using IBM Business Monitor


When you use only the features in the IBM BPM Dashboards toolkit, your dimensions and
measures are either predefined or built from scratch in Javascript. IBM Business Monitor,
in contrast, provides a model-driven programming paradigm. In the IBM Business Monitor
environment, developers first identify dimensions, measures, and other reporting artifacts in
a model authoring environment (IBM Integration Designer). After this model is defined, either
developers or end users can combine the various dimensions, measures, filters and visualizations
to suit their needs.
End users can define new dashboards even after application deployment. They can develop views
that explore business performance relationships that were not anticipated when the model was
first defined, without the participation of the developers. These interactive capabilities make IBM
Business Monitor particularly well suited for analytic tasks, because analysts can quickly build
evaluations of different aspects of an operation.
The Process Designer authoring tool in IBM BPM can automatically generate an IBM Business
Monitor model. The generated model is useful as a starting point for customization, and it was
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 6 of 13

ibm.com/developerWorks/

developerWorks

used for building the IBM Business Monitor part of the sample code and illustrations in this tutorial.
Figure 4 shows the setting in the IBM BPM V8.5.5 Process Designer that controls the model
generation feature.

Figure 4. Process Designer setting to trigger automatic IBM Business Monitor


model generation

Implementing with IBM Business Monitor is simpler than implementing with the IBM BPM
Dashboards toolkit, because the IBM Business Monitor developer only needs to define the
measurements, KPIs, and visualizations of interest. The end result also does more. For example,
the sample solution provides a drill-down capability in the IBM Business Monitor version but not
in Dashboards toolkit version. Drilling down is simple to implement in the model, but it would have
been more work with the Dashboards toolkit. Figure 5 shows the dashboard developed with the
code sample in IBM Business Monitor.

Figure 5. Custom dashboard example, using IBM Business Monitor technology

Dimensional analysis is powered by Cognos Business Intelligence technology, which is packaged


and integrated with IBM Business Monitor. Developers enjoy all the capabilities and tools of the
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 7 of 13

developerWorks

ibm.com/developerWorks/

Cognos Business Intelligence product. The Cognos license is provided as supporting software to
IBM Business Monitor. The License Information document for IBM Business Monitor provides more
information on appropriate use.
The Cognos technology also delivers advanced visualization capabilities. Without IBM Business
Monitor, the only out-of-box visualization tools available in IBM BPM are the dojox.chartingbased chart control and the collection of graphics used to create the built-in dashboards in the
Dashboards toolkit. Alternatively, developers are free to load the Javascript library of their choice.
However, they are building from relatively primitive tools. Cognos, in contrast, bundles the Rapid
Adaptive Visualizations Engine (RAVE) technology, which provides sophisticated capabilities for
building visualizations.
Finally, IBM Business Monitor provides more robust capabilities for handling KPIs and SLAs
(Figure 6 shows a user-defined KPI in IBM Business Monitor.) For example, an operational
worker might want some automatic notification when the value of a KPI goes out of range. The
programming tools in IBM BPM provide some capabilities, but custom programming is required
and alerts might not be generated in real time. IBM Business Monitor, in contrast, generates alerts
at the moment the SLA is violated. Furthermore, IBM Business Monitor can analyze KPI history
and apply trend analysis algorithms to predict future behavior.

Figure 6. A user-defined SLA in IBM Business Monitor

In IBM Business Monitor, the dimensional reporting capabilities, measures and alerting behaviors
are available to end users for further customization. End users have direct control of the definition
and management of the SLAs after the model is defined. Business owners can change the alerting
behavior or the makeup of their reports without dependencies on development cycles. The end
result is a more agile organization.

Non-functional capabilities
It's also useful to compare the Dashboards toolkit in IBM BPM with IBM Business Monitor from a
non-functional perspective. The most significant factor is that IBM Business Monitor and IBM BPM
are two separate software products (albeit, both developed by a common IBM development team).
Consequently, bringing IBM Business Monitor into an IBM BPM solution puts additional tasks on
the solution team.
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 8 of 13

ibm.com/developerWorks/

developerWorks

As of IBM BPM V8.5.5 and IBM Business Monitor V8.5.5, the products must each be installed
on their own server or server cluster. In earlier versions, this topology is recognized as a good
practice for production environments (because of the advantages of a dedicated cell for IBM
Business Monitor, described in the next paragraph). Administratively, each product should
be maintained in its own WebSphere Application Server cell. To support the two cells, the IT
infrastructure team must provision sufficient hardware resources and install, configure, and
maintain the IBM Business Monitor software, in addition to configuring IBM BPM.
IBM Business Monitor is separately licensed from IBM BPM, so there might be additional
software license costs associated with solution implementation.
While the additional server for IBM Business Monitor is an additional task for the infrastructure
team, the dedicated component for monitoring also provides some advantages. The separation
of function is more straightforward. Therefore, the processing requirements for monitoring
functions are more completely off-loaded from the IBM BPM server, and the IT resources are
more easily isolated and fine-tuned between IBM BPM and monitoring. Software fix levels can be
independently managed on the two components.
Business monitoring solutions typically capture and store a lot of information about business
activity each day. The business activity database grows continually and must be managed. The
tools provided with the IBM Business Monitor product are more comprehensive in this area, as
compared to the tools provided in IBM BPM.

Conclusion
This tutorial explored the factors that can guide solution architects to select the built-in IBM BPM
features for monitoring, or alternatively, the separately licensed IBM Business Monitor product
or perhaps the features of both products. The examples show that the built-in IBM BPM features
most closely match the needs of operational workers, who, generally speaking, use the reporting
information to actively manage the in-flight workload. IBM Business Monitor features, by contrast,
are a particularly good match for the analytic workers, who needs to perform a lot of dimensional
analysis on historical and current workloads. IBM Business Monitor is also the better match where
an organization puts high importance on the ability of business users to own and maintain the
reporting responsibilities, with fast change to reports, supporting agile deployment.
Broadly speaking, if you want to monitor activity across your entire enterprise, where some activity
happens in IBM BPM and additional activity happens in other applications, then IBM Business
Monitor is the only choice among IBM monitoring technologies. If you need to gain insight into
the relationships among the many variables in a business operation, it's likely that you need the
sophisticated analytic tools provided by Cognos in IBM Business Monitor. But if your needs all lie
within the scope of operational user stories, then the dashboard features in IBM BPM might be
sufficient for your stakeholders.
This tutorial identified the factors that help you assess more nuanced situations that present a
mix of requirements. As custom measurements, visualizations, and reporting analysis become
increasingly complex, so does the difficultly of implementing with only the basic monitoring tools in
the Dashboards toolkit in IBM BPM. As these factors become increasingly complex, the modeling
Comparing IBM Business Process Manager dashboards to IBM
Business Monitor

Page 9 of 13

developerWorks

ibm.com/developerWorks/

and dimensional analysis tools in IBM Business Monitor become more valuable and increasingly
compelling as the foundation for building the solution.

Acknowledgments
The authors would like to thank Jim Thorpe and Rich Szulewski for their review and contributions
to this tutorial.

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 10 of 13

ibm.com/developerWorks/

developerWorks

Downloads
Description

Name

Size

Code sample

code_sample.zip

13708KB

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 11 of 13

developerWorks

ibm.com/developerWorks/

Resources

IBM Business Process Management products


IBM Business Process Manager product page
developerWorks Business process management zone
Product support website for IBM Business Process Manager Advanced
IBM Business Process Manager documentation on IBM Knowledge Center
IBM Redbooks about IBM Business Process Manager
IBM Business Process Manager Developer Center

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 12 of 13

ibm.com/developerWorks/

developerWorks

About the authors


Kip Harris
Kip Harris is a certified IT architect with a long history in software product
development and services. His project experience includes operating systems
development, real-time robotic systems, and client side technologies for people with
disabilities. He currently works in IBM Services in the IBM Systems group.

Sameh Nasef
Sameh Nasef is a certified Level 2 Support Specialist. He is a member of IBM
Services. He has worked extensively with the IBM Business Process Manager
product suite and IBM Business Monitor. Sameh was a member of the IBM
WebSphere Business Modeler and IBM Business Monitor development team before
moving to the services team.
Copyright IBM Corporation 2015
(www.ibm.com/legal/copytrade.shtml)
Trademarks
(www.ibm.com/developerworks/ibm/trademarks/)

Comparing IBM Business Process Manager dashboards to IBM


Business Monitor

Page 13 of 13

Вам также может понравиться