Over the last few years, IBM products have made great progress in enabling customers to create a Business Process Management (BPM) solution. However, creating a new solution powered by WebSphere BPM is only the beginning. In this new technical series, we'll look at techniques you can use to further optimize your WebSphere solution to allow you to derive the full benefits of a BPM solution enabled by SOA.
Previous developerWorks articles provide an overview of the various entry points customers can use to begin their BPM projects. The various WebSphere V6.1 product releases added many additional capabilities and tighter integration between the products. So how can you further optimize your solution to use these new features? In this new series based on V6.1, we'll show you several new tips and techniques to address the following questions:
- How do you analyze the monitoring data that you have gathered for process improvements?
- How can you further improve your processes using some of the V6.1 capabilities, such as Lotus® Forms support?
- How can you model processes that are deployed on both WebSphere Process Server (Process Server) and FileNet?
- What are some techniques to invoke activities running on both Process Server and FileNet?
- How can you customize and configure WebSphere Business Monitor (Monitor) to monitor the entire workflow with subprocesses running on both the Process Server and FileNet engines?
This part will focus on the first question: How can you analyze the monitoring data that you have gathered to make process improvements? As in previous series, we'll anchor the discussions in this technical series around a single, simple but fictitious business scenario that you can easily adapt to your business problems.
Figure 1 shows the simple business scenario. A simple insurance claim process is first modeled in WebSphere Business Modeler (Modeler). The process has two paths: when a client submits a claim request, based on the claim amount, it can either go to the Express Claim path or the High Touch Claim path. The Express Claim path is a modern self-service solution for processing claim requests. The High Touch Claim path is an older process that is necessary for larger claim amounts in order to comply with government policies. The claim department wants to improve the overall claim process. However, due to budget constraints, the claim department can automate only one part of the solution in this quarter. Although at first glance the High Touch Claim path seems to be the one that takes the longest time, in reality, it might not be the right path to optimize to get the best return on investment. One of the simplest ways to determine which task to improve is to conduct real testing so that you can gain business insights based on real data. With WebSphere BPM V6.1 products, you can create and deploy such a test environment in no time. The rest of this article will show you how.
Figure 1. Simple claim process
You can use Modeler to simulate the running of the process. Simulation allows you to assess the performance of the process, generate statistics, and pinpoint potential areas for improvement. For example, you can enter the processing time estimate for a particular task by selecting the Duration tab in the Attributes view. On the Duration tab, you can enter an estimated time for the task to finish, as shown in Figure 2 for the ExpressClaim task.
Figure 2. Enter processing time estimated value
In order for the processing time label and value to show up in the process diagram, select the Visual Attributes page, and enable Processing time for the process element such as a Local task, as shown in Figure 3. You can now run a simulation to generate a report for the cost and revenue based on the estimation you entered.
Figure 3. Enable processing time label and values to be displayed
Simulation allows you to estimate your cost based on the projected values. To get a really accurate picture, you can use WebSphere Business Monitor to monitor the BPEL process and get the actual duration for each task. To indicate which process element you want to monitor and what kind of measures you want to collect, switch to the Monitored Values tab, as shown in Figure 4. For this example, we'll select the check boxes to monitor the processing time for three tasks: AccessClaim, ExpressClaim and HighTouchClaim.
Figure 4. Monitor processing time for various tasks
Next, you can export the process model and the Monitor model from Modeler so that you can complete their implementations in WebSphere Integration Developer (Integration Developer). Since this has been discussed in previous articles (see Resources), we won't get into the details here. The basic steps are the same as in V6.0.2 of the products. Figure 5 shows the exported BPEL running in Integration Developer V6.1 with event monitoring turned on for the process and various activities.
Figure 5. Simple claim process exported as BPEL
The Monitor model that has been customized for this example is provided as a download with this article. A new usability enhancement has been added in V6.1 to make it easier to work with the tracking key. To return a run-time value collected from Monitor to the associated process element in Modeler, a tracking key that plays the role of a cookie is required to make the correlation. In V6.0.2, this tracking key is generated when you export the Monitor model from Modeler. However, it is not an easy to use key and can be difficult to maintain.
In V6.1, you can define your own tracking key in the Monitor model editor by following a simple naming convention. Figure 6 shows an example of defining the tracking key for the processingTime measure in the AccessClaim task. You must include the project name (Insurance), process name (Processes/SimpleClaimProcess), and task name (AccessClaim) to properly scope the tracking key processingTime attribute.
Figure 6. Customize the tracking key
Deployment is much improved in Monitor V6.1. You can simply generate the EAR from your Monitor model, add that to the Monitor server, and start monitoring events from your BPEL process.
Monitor V6.1 includes major improvements to business dashboards using Web 2.0 AJAX technologies to provide a richer user experience with more dynamicity. Business users can personalize and customize their dashboards by simply dragging and dropping to create new key performance indicators (KPIs) without requiring a new development and deployment cycle. Figure 7 shows an example of the Monitor dashboard for our simple claim process showing the KPIs, Instances, Diagrams and Reports views. The Reports view shows the total number of daily claims in each of the four regions over a time period.
Figure 7. Monitor dashboard for simple claim process
The Monitor dashboard supports cooperative connection between Instances and Diagrams views so that the SVG diagrams can be dynamically annotated with monitoring data specific to a monitor instance at run-time. To enable the cooperative mode of the Instances view, click Personalize, then go to the Cooperative tab and check Cooperative mode. Repeat this for the Diagrams view. This enables the SVG diagrams to be annotated with metrics data that corresponds to the particular instance. The annotations are defined in the visual part of the Monitor model.
After the claim process executes for some time, you can export the actual values captured by Monitor to an XML file. Go to the Export view on the Monitor dashboard, select the Claim Monitor model, and click Export as shown in Figure 8.
Figure 8. Export Values view
An XML file is created, as shown below. If you examine the content of the XML file, you'll find entries for each of the three monitored values selected in Figure 4. The trackingKey element corresponds to the tracking key that we customized in Figure 6 for each of the measures.
<measure>
<trackingKey>Insurance/Processes/SimpleClaimProcess/AccessClaim/processingTime
</trackingKey>
<valueType>double</valueType>
<value>30000000</value>
</measure>
|
The last step is to import the monitoring results back into Modeler. To do this, open the Import wizard and select Monitoring result, as shown in Figure 9. Select the XML file that you exported from Monitor and follow the prompts to complete the import.
Figure 9. Import monitor metrics into Modeler
Compare metrics to the simulation
As shown in Figure 10, the process diagram is now updated with the actual metrics. If you compare Figure 10 to the picture in Figure 1, you can see that over the period of time when the measures were gathered, the ExpressClaim task is taking up more time than the HighTouchClaim task. Therefore, to achieve a better return on investment, the claim department should first work on improving the ExpressClaim task.
Figure 10. Revised process estimates based on real metrics
This article showed you how to use real monitoring data to help identify areas where you can further improve your process. In the next article in this series, you'll learn about some of the new WebSphere V6.1 BPM capabilities you can use to extend your process model, such as the new business rule and the Lotus Forms support in Modeler. You'll also find out how you can use Modeler to create processes that can be deployed to FileNet for automating different parts of your overall business processes.
The download provided with this article contains the artifacts necessary to follow the sample we used in the article. To view the artifacts, do the following:
- Import modeler_before\insurance.mar into Modeler to see the original insurance claim process model (shown in Figure 1).
- Import bpel_mon_pi.zip into Integration Developer with the Monitor toolkit to see the BPEL process implementation and the Monitor model (shown in Figure 5).
- Look at modeler_after\exportvalues.xml to see the monitoring results exported from the Monitor dashboard (shown in Figure 8).
- Import modeler_after\insurance.mar into Modeler to see the insurance claim model with actual metrics data (shown in Figure 10).
| Description | Name | Size | Download method |
|---|---|---|---|
| Artifacts for the sample | download.zip | 760KB | HTTP |
Information about download methods
Learn
-
Innovate and optimize business operations with business process management (BPM), Part 1: Business process management enabled by SOA (developerWorks 2007): Discover how business process management (BPM) fits into the Service-Oriented Architecture (SOA) life cycle.
-
Architecting on demand solutions, Part 17: Build a Hello World SOA application (developerWorks 2006): IBM offers several enhanced products to support every stage of the SOA life cycle and to strengthen the SOA Foundation. But what are the practical steps you need to get started? In this article, the 17th in a series, you'll learn how to build your first Hello World SOA application.
-
Jump-start business activity monitoring (BAM), Part 1: Introduction to monitor modeling (developerWorks 2007): In this article you're introduced to the core elements of a monitor model by walking through an example. You construct a monitor model for a business activity monitoring (BAM) scenario "outside-to-in," starting with business requirements and adding technical detail until you have an executable model.
-
End-to-end BPEL business activity monitoring with IBM SOA tools: Part 1: Modeling for process execution with WebSphere Business Modeler (developerWorks 2007): This is the first article in a series that journeys through the process of how to develop an end-to-end BPEL business activity monitoring (BAM) solution using IBM tooling. In this first article you build the process model and business process measures in WebSphere Business Modeler that you'll use throughout the series.
-
Business Process Management enabled by SOA: Get product information, including features and benefits.
-
WebSphere Business Modeler v6.1: Get product information, including features, benefits, demos and trial downloads.
-
WebSphere Integration Developer V6.1: Get product information, including features and benefits.
Get products and technologies
-
WebSphere Process Server V6.1: Get product information, including features and benefits.
-
WebSphere Business Monitor V6.1: Get product information, including features and benefits.
-
developerWorks BPM zone: Get the latest technical resources on IBM BPM solutions, including downloads, demos, articles, tutorials, events, webcasts, and more.

Christina Lau is a Senior Technical Staff Member at IBM. Christina leads the BPM Architecture and Advanced Technology Team in WebSphere, focusing on next-generation BPM technologies and consumability improvements in the BPM solution stack. You can reach Christina at clau@ca.ibm.com.

Scott Peddle is an Advisory Software Developer on the Business Process Management Architecture and Advanced Technology team. He is responsible for developing integration strategies within the WebSphere BPM product suite. You can reach Scott at peddle@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.
Comments (Undergoing maintenance)





