Skip to main content

skip to main content

developerWorks  >  Sample IT projects | WebSphere | Architecture  >

Put new capabilities of business activity monitoring (BAM) to work, Part 9: Empowered authoring of monitor models with IBM WebSphere Business Monitor development toolkit for 6.1

developerWorks
Document options
PDF format - Fits A4 and Letter

PDF - Fits A4 and Letter
47KB (8 pages)

Get Adobe® Reader®

Document options requiring JavaScript are not displayed


Rate this page

Help us improve this content


Level: Intermediate

Curtis Miles (crmiles@ca.ibm.com), WebSphere Business Monitor Tools Lead Developer, IBM
Ann Ewan (ewan@ca.ibm.com), WebSphere Business Modeler Information Developer, IBM 

06 May 2008

In this series, learn about the dramatic changes in IBM® WebSphere® Business Monitor V6.1—a major release that extends capability and simplifies how you monitor and manage the performance of your business. This article describes the many new functions for creating and editing monitor models in the WebSphere Business Monitor V6.1 development toolkit. Learn about the major enhancements, including integration with IBM WebSphere Integration Developer, XSD event definitions, visual model updates, and editing changes for KPIs and dimensional models.

Introduction

IBM WebSphere Business Monitor V6.1 introduces many significant changes, especially in monitor model generation and iterative development. In this article, learn how the variety of enhancements in this release can benefit your development of monitor models. Topics include:

This article does not use a scenario, though some graphics are from the mortgage lending business scenario used previously in this series. The sections about generating monitor models use the loan application sample that's included with WebSphere Integration Developer.



Back to top


Choice of development platforms

You can now install the IBM WebSphere Business Monitor development toolkit into either IBM Rational® Application Developer or WebSphere Integration Developer. This is a benefit if you are using monitoring applications that were not developed with WebSphere Integration Developer. WebSphere Integration Developer does not have to be installed.



Back to top


Monitor model generation and common monitoring templates

When integrated with WebSphere Integration Developer and IBM WebSphere Process Server, WebSphere Business Monitor can track the full range of activity of components running in IBM WebSphere Enterprise Service Bus (ESB) and WebSphere Process Server.

Previously, monitor model generation was supported for Business Process Execution Language (BPEL) processes and partially supported (with no customization) for human tasks. You could monitor Service Component Architecture (SCA) and ESB applications, but there was no support beyond the creation of event definitions with specific event types.

WebSphere Business Monitor 6.1 supports monitoring all WebSphere Process Server component types, including state machines, rule groups, selectors, maps, and so on. Monitoring can also be done at the module (SCA) level, the individual component level, or at a level that is even more fine-grained, depending on what you select when generating the monitor model. After you generate the monitor model, it stays connected to the application to help you keep it synchronized as the application evolves.

To generate a monitor model in the toolkit:

  1. Right-click a module project and select Monitor Tools -> Generate Monitor Model.
  2. After you specify the target project and a name for the monitor model, you see a tree-based visualization of the application to be monitored. Click an application element to see the template and the event information you can choose for that element.

Figure 1 shows an example of the Generate Monitor Model wizard.


Figure 1. Generate Monitor Model wizard
Screen capture of the 'Choose what to monitor' page of the Generate Monitor Model wizard

You can choose from the predefined set of common monitoring templates to speed up your development of common business monitoring requirements. When you select a template, the required implementation metrics are automatically added to the monitor model. For example, you can select a template to capture the elapsed duration of a BPEL process.

Alternatively, choose the Emitted Events tab to select individual events to monitor for the selected element.

Based on the events and templates you select, the wizard shows the elements you have chosen to monitor. The final page of the wizard shows a preview tree of the generated monitor model. You can either accept the tree as is, or go back to earlier wizard pages and make alternate choices in light of the final result. Unlike in previous releases, you can still make additional changes later to both the underlying application and the monitor model without losing the linkage between the two.

The newly created monitor model contains automatically generated elements that correspond to the common monitoring templates and inbound events you selected. See Figure 2 for an example.


Figure 2. Application element section
Screen capture of the           Application element section on the Monitor Details Model page

You can also add elements related to an application to an existing monitor model, which provides flexibility to add monitoring support for additional parts of an application after the initial monitor model generation.

  1. Right-click the model tree and select New -> Create from Application to launch a wizard similar to the Generate Monitor Model wizard.
  2. Select the application elements to monitor.
You can also select templates or individual events the same way.



Back to top


Iterative development and synchronization with WebSphere Integration Developer

When you use WebSphere Business Monitor with WebSphere Integration Developer, the changes made to an application in WebSphere Integration Developer can affect how the application is monitored. New refactoring and synchronization features in the WebSphere Business Monitor development toolkit 6.1 help keep the application and the corresponding monitor models consistent.

Support for iterative development takes two forms:

  • When you make a change to an application in WebSphere Integration Developer using the refactor operation (such as changes to a module name, component name, interface name, operation name, business object namespace, or business object name), you can choose to automatically update any monitor models that are associated with the application.

  • When you open a monitor model that you generated from WebSphere Integration Developer and the corresponding application in WebSphere Integration Developer has changed, you will see warnings in the Problems view. You can synchronize the models to remove the warnings.

To synchronize the monitor model with the application, right-click the monitor model in the Project Explorer view and select Synchronize with Application. The synchronization window groups the application changes into three categories: added elements, removed elements, and changed elements. For each change, it displays the action that will be taken to update the monitor model. In some cases, you can choose the action to take. For example, when a monitored component or operation is deleted, you can choose either to delete the monitoring elements or to disconnect the monitoring elements from the application.



Back to top


Visual model authoring and testing

You can now add actions to Scalable Vector Graphics (SVG) diagrams using a pop-up menu. You can also add sample data to test the diagrams in the WebSphere Business Monitor development toolkit to make sure they are working as you intended.

Previously, visual model support was limited to assigning and displaying SVG files associated with each context. All other aspects of the visual model required manual authoring in the XML page of the editor, with no way to test the authored visual model actions using sample data before getting all the way to the dashboards.

The visual model page of the editor has been updated significantly, as shown in Figure 3.

  • When you open an SVG file, it is parsed to extract the "shape sets." Shape sets are created automatically if the SVG file comes from WebSphere Business Modeler, or you can create a file in an SVG editor and associate mm:id values with the SVG elements.
  • You can use pop-up menus and widgets to add actions to shape sets.
  • You can use sample data for the metrics and key performance indicators (KPIs) to test the actions in the editor. The Runtime Diagram Preview window displays the diagram as it will look in the dashboards. The return values of visual model expressions are also shown.


Figure 3. Enhancements to visual model
Screen capture of the visual model, showing the table of shape sets and table of sample values.

Figure 4 shows the Runtime Diagram Preview, which comes up when you click the Test button on the visual model page.


Figure 4. Runtime Diagram Preview
Screen capture of the Runtime Diagram Preview window


Back to top


Event definitions with event parts based on XML schemas

You can now use XML schema definition (XSD) elements and types as the basis for event definitions, instead of using CBEs in proprietary format. This accommodates the XSD-based event definitions in WebSphere Integration Developer and WebSphere Process Server 6.1.

XSD event definitions are shown alongside CBE definitions in the Event Definitions group in the Project Explorer. Double-click a file to open an XSD editor. The structure of a single inbound or outbound event can be defined by a collection of XSD types or elements, which are called event parts. Event parts are shown under inbound and outbound events in the model tree on the Model Details page.

To define the structure of your inbound and outbound events, specify only event parts, only a CBE, or a CBE in combination with one or more event parts.

Content assist shows the structure of the XML event, pieced together from the event parts defined on the inbound event to form a single logical structure, as shown in Figure 5.


Figure 5. Inbound event in content assist window
Screen capture of the content assist window for an inbound event with an event part


Back to top


KPI enhancements

With WebSphere Business Monitor development toolkit 6.1, the types of possible KPI calculations are expanded to include calculations based on the relationship with other KPIs. There are now two types of KPIs, as shown in Figure 6, and you select which you want to create.


Figure 6. Options for setting the KPI value
Screen capture of KPI Definition, showing the choice of KPI type

KPIs based on metrics and an aggregation function
These KPIs are no longer based on measures, but refer to the source metric directly.

KPIs of this type can have time and data filters defined to restrict the instance values that are used in their calculation.

KPIs defined by an expression
For KPIs defined by an expression that references other KPI values, you have support for building up higher-level KPIs using other KPIs as building blocks. For example, you can define a Total Profit KPI using an expression of Total Revenue — Total Cost.

Full content assist is available to help with the creation of the expression. You can also use user-defined XPath functions in KPI expressions.

For a metric-based KPI, you can specify a data filter to further limit the metric instance values that are used in the KPI calculation. Figure 7 shows how to enter values for list operators (such as in and notIn) using a separate window launched from the Values cell.


Figure 7. Adding values to a data filter
Screen capture of data filter table, showing the dialog for creating the list of possible values


Back to top


Dimensional model redesign

The Data Mart Model has been renamed the Dimensional Model. This page has been significantly redesigned to improve usability and to make it more consistent with the rest of the monitor model editor. Figure 8 shows the updated dimensional model and describes the changes.


Figure 8. Enhancements to the Dimensional Model
Screen capture of the Dimensional Model, showing that: 1) Measures, dimensions, and dimension levels can be managed completely from the perspective of the containing cube. 2) Facts have been completely removed, and measures now refer directly to the metrics upon which they are based. 3) Dimension levels in the editor are shown hierarchically within their dimension. 4) Measures, dimensions, and dimension levels can be added, edited, or removed from the tables.


Back to top


Editor support for user-defined XPath functions

In addition to processing events received from event sources, you can pull additional business reference information into the WebSphere Business Monitor server using custom functions. You can use the XPath functions, implemented as specially annotated Java™ methods, to define maps and to trigger conditions, filters, correlation expressions, and default values in the monitor model editor.

You can develop user-defined XPath functions through a Java project in Rational Application Developer or WebSphere Integration Developer.



Back to top


Usability enhancements in the monitor model editor

To improve the speed with which you can create monitor models, the monitor model editor has several enhancements. Now you can:

  • Add or edit expressions directly in the table cells. You no longer have to pop up a separate window to write a simple expression for a key, metric, or outbound event.

    Content assist (Ctrl+Space) is available directly within the cell. For large expressions, you can still launch the resizable window.

  • Double-click a row in a table to create a new row.

  • Create a new element by right-clicking at any level in the model tree. Newly created elements are placed in the closest parent container of the selected element.

  • Drag and drop files from the file system onto the Project Explorer to bring models or event definitions into your project from WebSphere Business Modeler or other sources.

    You can also drag and drop files between projects in the Project Explorer to move models around.

  • Right-click an element in the model tree on the Model Details page, select Copy from the pop-up menu, and paste the element under another parent node in the tree.

To improve validation:

  • Monitor models are validated each time you modify the model. You do not need to save the model to see the validation errors displayed in the Problems view. The validation error indicators are shown directly on the widget where the error occurred.
  • Fields that are required are marked visually.
  • SVG files are shown on the Project Explorer in an SVG Files group.

The content assist window now displays all signatures for each function, though you can still simply select the parent element to insert the function text in the expression. Selecting an individual function signature pops up tooltip text to describe the arguments, as shown in Figure 9.


Figure 9. Tooltip in the content assist window
Screen capture of content assist, showing the details of the tooltip for fn:adjust-date-time-timezone(xs:date)xs:date


Back to top


Merging and combining monitor models

For iterative development, you can compare and merge two models. For example, if you export a monitor model from WebSphere Business Modeler, make changes to the model in the monitor model editor, update the process in WebSphere Business Modeler, and export again, you can merge the two models so your previous updates are not lost.

When you compare models, the two monitor model files open in a monitor model comparison editor with the changes highlighted. You can choose to accept or reject each change. Then merge the results into one of the two original monitor models or into a separate, third monitor model.

You can also build a monitor model that monitors more than one application at a time by combining two monitor models generated from different applications. When you combine models, you can replace one of the two original monitor models or create a separate, third monitor model. The result is a single monitor model that contains top-level monitoring contexts from each of the source models, as well as correctly combined KPI models, dimensional models, visual models, and event models.



Back to top


Monitoring WebSphere MQ Workflow processes

WebSphere Business Monitor provides first-class support for monitoring WebSphere MQ Workflow processes. The "FDL to monitor model" utility can be installed as a plug-in in Rational Application Developer or WebSphere Integration Developer using the Eclipse updater. The plug-in is packaged as a ZIP file, and is shipped on the WebSphere Business Monitor development toolkit installation CD.

To monitor WebSphere MQ Workflow processes, you need the following components:

  • FDL to monitor model utility for WebSphere MQ Workflow
  • WebSphere MQ Workflow 3.6 service pack
  • WebSphere MQ Workflow SupportPac™ for WebSphere MQ Workflow event converter

After setting up the utility, you can import a FlowMark Definition Language (FDL) file to create a new FDL-related project in the Package Explorer view. Right-click the project and select Monitor Tools -> Generate Monitor Model to generate a monitor model from the project, just as you can with a WebSphere Integration Developer module. The same common monitoring templates and generation support are available.



Back to top


Integrated test server and dashboards

To reduce the time involved in developing, testing, and changing a monitor model, the manual deployment steps have been removed. You can simply add the monitor model application to an integrated test server using the WebSphere Business Monitor development toolkit menu. The steps to reflect a change to a monitor model have also been automated.

The Integrated Test Client (ITC) is integrated with Rational Application Developer or WebSphere Integration Developer and is installed with the development toolkit. You can use it to quickly and conveniently test a monitor model that was published in the WebSphere Business Monitor test server. The ITC automatically detects all of the inbound events that were defined in this monitor model and lists them for you. You can add values to create sample events, emit events one at a time, or create a script to emit a batch of sample events.

The WebSphere Business Monitor test environment includes Web-based dashboards. After you deploy the monitor model to the integrated test environment (ITE), you can examine the resulting dashboards to verify whether your monitor model logic is correct, and verify that you are capturing the information that you want in the best format.



Back to top


Monitor model migration from 6.0.2

When you open a well-formed V6.0.2 monitor model in the monitor model editor, it is automatically converted to V6.1.0. You can also convert a group of monitor model files without opening them.

Alternatively, you can migrate one or a group (in the same directory) of 6.0.2 monitor models to version 6.1.0 format using a batch file at the command line.



Back to top


Summary

In this article, you learned the highlights of several significant changes in WebSphere Business Monitor development toolkit V6.1. The new features provide empowerment when authoring monitor models and in iterative development.



Resources

Learn

Get products and technologies
  • Download IBM product evaluation versions and get your hands on application development tools and middleware products from DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.


Discuss


About the authors

author photo

Curtis Miles currently leads the development effort for the business measures capabilities within IBM WebSphere Business Modeler as well as the Monitor model editor in the WebSphere Business Monitor Development Toolkit. He previously worked on many other aspects of WebSphere Business Modeler, including process simulation and transformation of Modeler processes to BPEL.


Ann Ewan

Ann Ewan is a senior information developer who works on both the WebSphere Business Modeler and WebSphere Business Monitor teams. Ann has 17 years of technical writing experience and is also a published author of fantasy novels.




Rate this page


Please take a moment to complete this form to help us better serve you.



 


 


Not
useful
Extremely
useful
 


Share this....

digg Digg this story del.icio.us del.icio.us Slashdot Slashdot it!



Back to top


IBM, the IBM logo, ibm.com, DB2, developerWorks, Lotus, Rational, SupportPac, Tivoli, and WebSphere are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. These and other IBM trademarked terms are marked on their first occurrence in this information with the appropriate symbol (® or ™), indicating US registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at http://www.ibm.com/legal/copytrade.shtml. Adobe and the Adobe logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.