This article extends Part 18, "Use IBM WebSphere Integration Developer to assemble components," and helps you create and configure objectives in the IBM Workplace for Business Strategy Execution product. You also configure a Workplace Business Strategy Execution data source to invoke a service deployed on WebSphere Process Server (Process Server) that returns business process metrics. And find out how you can link a Workplace Business Strategy Execution objective to the actual data that is acquired.
Workplace for Business Strategy Execution overview
Workplace for Business Strategy Execution is a software product that can help your organization improve the management and execution of its business objectives. It uses portal, collaboration, and application integration technologies, and adds unique capabilities specifically for organizations to manage the achievement of objectives. Effective strategy execution can be improved by aligning business units and workgroups to corporate objectives, assigning accountability, monitoring progress, and accelerating exception resolution. Workplace for Business Strategy Execution delivers intuitive alignment and insight through actionable scorecards and in-context dashboards.
Workplace for Business Strategy Execution also provides a flexible mechanism for aggregating information from a range of systems and placing it in context. Data can come from a variety of places, such as back-end systems, applications, business processes, or even spreadsheets. Workplace for Business Strategy Execution lets you import these data through its Web services interfaces. In this article, you learn how to use the Data Acquisition Portlet in the product to acquire metrics data from your business processes deployed on Process Server.
A scorecard aligns and focuses an organization around its goals, owners, dependencies and progress. Workplace for Business Strategy Execution lets leaders establish objectives that can be easily tracked using key performance indicators (KPIs) and uniform metrics.
Objectives can be grouped into categories -- such as customer-facing objectives, financial, internal business processes, learning and growth -- or other areas on which the organization needs to focus. Within objectives are initiatives, or action plans, put in place to meet the specific goal. Aligning the initiatives to strategic objectives helps ensure that the appropriate activities are being pursued.
An objectives status is a combination of status (color and shape) and trend (directional arrow), shown in the example scorecard in Figure 1.
Figure 1. Scorecard example view

In Figure 1, the status of all finance revenue objectives is on target and has a positive (green) status. However, the objective Grow Market Share in the Customer category is not quite reaching its target and is showing a moderate (amber) status. The downward arrow also indicates that the objective is trending toward missing its milestone target.
An objective has the following fields:
- Milestone Target. Shows the target of the objective at the end of the next upcoming interval
- Actual. Shows the current (most recent) value of an objective
- Variance. Denotes how far the actual is off target, displayed as a real percentage
- Change. Indicates how much an objective's value has changed since the last time a value was recorded, displayed as a real percentage
- Final Target. Shows the last target in the system for an objective
The visual status assigned to an objective is achieved by correlating the values in these fields.
Revisiting the business scenario
Part 18 includes an insurance claim business process containing a choice point for claims processing: low-touch claim (Express) or high-touch claim. High-touch claims are routed to and handled by a human task, whereas low-touch claims are processed automatically. Figure 2 shows the portion of the process where claims are created and routed to either the high- or low-touch activity.
Figure 2. Insurance claim business process

Because the doHighTouch and doLowTouch activities are viewed as critical steps in the overall business process, they are marked as business-relevant activities. When these activities are invoked, a Common Base Event (CBE) is created to capture business-relevant data and is stored in the Common Event Infrastructure (CEI) event datastore. Figure 3 shows how activities are flagged as business relevant in the BPEL editor in WebSphere Integration Developer.
Figure 3. Enable business relevance on BPEL Activity

The event data stored in the CEI data store can be used in a number of ways. In this scenario, we'll use the data to determine the percentage of claims that are high touch (Express) compared with those that are low touch. The goal is to increase the percentage of low-touch (Express) claims from an approximate 25% to 75%.
To track this goal, we'll create an objective on a Workplace for Business Strategy Execution scorecard and populate actual values for this objective with a Workplace for Business Strategy Execution data source. The data source leverages a BPEL metrics application residing on Process Server, exposed as a Web service. The following section describes this application in more detail and provides installation and configuration steps.
Installing Process Server BPEL metrics application
The Process Server Business Process Execution Language (BPEL) metrics application is available in the sample download included with this article (click on Sample code in the right nav). The download contains two versions of the application:
- WPSBpelMetrics.ear: Designed for installation to WebSphere Process Server
- WBSE2WPSBpelMetrics.ear: Designed for installation to the application server shipped with BPEL
For this article, we'll use the first one because the BPEL version requires additional configuration, especially if security is enabled. Download the code and extract the application WPSBpelMetrics.ear from the zip file to a folder of your choice.
Installation of the application is straightforward, and all defaults can be accepted. Use the Process Server Administrative Console to install WPSBpelMetrics.ear, then start the application as shown in Figure 4.
Figure 4. Process Server Administrative Console

The WPSBpelMetrics application is designed and implemented to work in conjunction with the EventAccess Enterprise JavaBeans (EJB), which is shipped as part of the CEI EventServer application. You need to take a few precautions prior to its use. Assuming the default Java Naming and Directory Interface (JNDI) name for the EventAccess EJB has not been altered, the application should work as is. If you are unsure, you can validate using the Admin Console by selecting the EventServer application. In the resulting panel, select Provide JNDI Names for Beans from the Additional Properties section.
The default JNDI name for the EventAccessEJB component is ejb/com/ibm/events/access/EventAccess, as shown in Figure 5. If your JNDI name does not match the default, you can either reset it to the default (recommended), or you will need to update a properties file in the installed WPSBpelMetrics application, as discussed below. Resetting it to the default might affect other applications.
Figure 5. JNDI name for EventAccessEJB

To update the JNDI name in the installed application to match your EventAccessEJB JNDI name, first stop the WPSBpelMetrics application and locate its install folder. (For example, [WPS_Install]\profiles\procserver\installedApps\iapetusNode01Cell\WPSBpelMetricsEAR.ear.)
Within this folder resides a WPSBpelMetricsEJB.jar containing a message.properties file (com/ibm/wps/bpel/metrics/messages.properties). The properties file contains a BpelMetrics.JNDI property that you will need to update to reflect your custom EventAccessEJB JNDI name. Once you've done that, refresh the WPSBpelMetricsEJB.jar with the new messages.properties accordingly, and restart the WPSBPelMetrics application.
Installing the insurance claim business process
The next step is to install the insurance business process from Part 18 of this series. If you've already built or installed the insurance business process from Part 18, go to Validation.
If you have not installed the insurance business process from Part 18, you should obtain the application from the download section of that article. Within the download, there are four enterprise applications:
- ClaimWebServiceEAR.ear
- CRMWebServiceEAR.ear
- PolicyWebServiceEAR.ear
- InsuranceClaimAppDevWorks.ear
Install all four of these applications onto your Process Server server, accepting the defaults. Once installed, be sure to start the applications. Figure 6 shows the resulting Admin Console applications.
Figure 6. Insurance claim application installed on Process Server

Before proceeding, verify the insurance application is running successfully. To do so, review the instructions in Part 18 and in the Part 18 download. Although Part 18 contains instructions for setting up WebSphere Portal applications, this is optional for this article. If you choose not to install the portal applications, you can test using the Business Process Choreographer test client at http://[hostname]:9080/bpc. Select My Process Templates, then start an instance of the InsuranceClaim1 process. Complete the process input message, as shown in Figure 7.
Figure 7. Create a new instance of the claim process

Expand the CustomerInfo and PolicyInfo sections, as shown in Figure 8. Click Submit when complete.
Figure 8. Complete customer and policy data

Because the WPSBpelMetrics application installed previously relies on events being emitted from the business process and being stored in the CEI datastore, you should verify the presence of these events. Open the CBE browser at http://[hostname]:9060/ibm/console/cbebrowser.
Click Get Events at the bottom of the Get Events panel. Once complete, select BPEL Process Events. Select the InsuranceClaim1 process. An instance should exist for each time you invoked the business process. Choose an instance, and ensure that events have successfully been recorded, as shown in Figure 9.
Figure 9. Validate that events are generated

Once the Process Server portions are installed and tested successfully, you can now proceed to the Workplace for Business Strategy Execution portion of the configuration.
As mentioned, the goal in this scenario is to increase the percentage of express insurance claims to 75%. To track this goal, you need to create an objective in a scorecard. The characters featured in subsequent sections are based off the sample data that ships with Workplace for Business Strategy Execution. By default, the sample data is installed as part of the installation process. (See the Workplace for Business Strategy Execution documentation in Resources for more details.)
In this example, you'll reuse the Malcolm Macgillivray ID, but you can use a different ID if you prefer. After signing into Workplace for Business Strategy Execution, select Business Strategy Execution to view the scorecard. To create a new objective, simply click New Objective in the scorecard view and you should see the new objective, as shown in Figure 10.
Figure 10. Create a new objective

The goal of this new objective is to track the insurance claim business process for percentage of claims going through the express path. You can enter an estimate of the Beginning value and the Target value of the percentage of express claims. When you click OK, the new objective is added to Malcolm's scorecard, as shown in Figure 11.
Figure 11. Malcolm's scorecard with new objective added

This objective has empty values for a number of fields (Actual, for example) because the data has not been supplied yet to the objective. Data can be supplied in several ways, including importing manually from a spreadsheet or more dynamically by retrieving the data from an external source. In this scenario, we configure a data source that will process metrics data from the running business process deployed on Process Server.
Configuration of a data source is a task reserved for Workplace for Business Strategy Execution administrators. Users, such as Malcolm in this case, can link objectives to preconfigured data sources. However they are not permitted to configure the data source itself unless given administrative authority. To configure a data source, the user must log in using an ID with an administrative authority, such as the administrator ID specified during Workplace for Business Strategy Execution installation.
Upon successful login, select the Administration link > Business Strategy Execution. Select Data Acquisition > New Data Source to launch the Data Acquisition configuration panel. Step 1 of the configuration is where you specify the Web service end point provided by the WPSBpelMetrics application. (For reference, the end point will be http://[wps_hostname]:[port]/WPSBpelMetricsWeb/wsdl/com/ibm/wps/bpel/metrics/BpelMetrics.wsdl.) The port required is the [WC_defaulthost] port, which by default is 9080. To verify, view the port specifications in your server configuration. Figure 12 shows the Data Acquisition portlet.
Figure 12. Data Acquisition portlet to configure a new data source

Assuming the WPSBpelMetrics application is installed and running properly and the WSDL URL is valid, step 2 will display. No user action is required on this panel. Proceed to Step 3.
Step 3 is where the Web service is configured to perform a specific task. The fields displayed in this step are the result of introspection of the input fields from the Web Services Description Language (WSDL) file specified in step 1. The host and port (bootstrap) capture which Process Server instance is hosting the InsuranceClaim1 business process, identified by the processName field.
ActivityName is used to identify a subprocess or activity within the entire process that you are interested in.
ProcessState identifies the state of processes you are interested in. A value of 0 indicates all processes, regardless of state. Other values include 1 for completed and 2 for still running.
The startDate and endDate can be leveraged to limit the time frame of interest. By default, all InsuranceClaim1 instances will be considered, regardless of time frame. Figure 13 shows step 3 completed.
Figure 13. Dynamically select the business process and metrics of interest

Once you have completed the entry fields in step 3, click Test Service to validate that the service is running properly and the results are as expected. If this is working properly, you can link the data source to our objective so that it can display the actual value.
Linking an objective to a data source
Once the administrator has completed configuration of the data source, a user (such as Malcolm) can configure his objective to get the actual results. Malcolm can select Properties from the objective context menu and then the Data Source tab. Select Acquire from external source, and choose the new data source, as shown in Figure 14.
Figure 14. Configure Data Source for actual data feed for an Objective

Scheduling an event for data acquisition and roll-up
Prior to scheduling an event to perform data acquisition, the insurance claim business process should be executed a number of times to ensure event data exists. If you have not already done so, use either the Business Process Choreographer (BPC) test client or WebSphere Portal to submit some new claims. Make sure you toggle the Express Claim field to provide a good mix of high- and low-touch claims.
Using the scheduler, the administrator can schedule when and what actions to perform and at what intervals. The frequency can range from a one-time event to be executed at a designated time or as a weekly, monthly, or yearly event. Typically, the frequency is determined by the objective requirements. The type of event is categorized by the Tasks. Data acquisition implies execution of the data source. Roll-up notifies WBSE that linked objectives should be updated based on the actual results of their dependent objectives. Alert notifications inform users of the performance of their objectives. Figure 15 shows an example of a completed scheduler.
Figure 15. Workplace for Business Strategy Execution Scheduler

After the scheduled event runs to completion, the actual values in Malcolm's objective are updated. Depending on the number of invocations of the insurance claim business process and the percentage of express compared with high-touch claims, the results will vary. Figure 16 shows the percentage of express claims to be 66%. As a result, the objective is assigned a green status.
Figure 16. Malcolm's scorecard with actual value for the objective

In this article, you are introduced to Workplace for Business Strategy Execution software and learned how to create, update, and manage your organization objectives using this tool. With its flexible data acquisition mechanism, you can collect metrics data from different environments (such as IBM CISC® or Microsoft® .NET®) or operation systems using standard Web services interfaces, and render them in the intuitive dashboards. You also reviewed an example of how you can use this technique by leveraging events that are already emitted from your business processes deployed on WebSphere Process Server.
| Description | Name | Size | Download method |
|---|---|---|---|
| Metrics applications | i-odoebp19code.zip | 10KB | HTTP |
Information about download methods
Learn
- Architecting on demand solutions series overview: Get an overview, features, benefits, system requirements. Link to previous articles and read about this series, which demonstrates to business analysts, solution designers, and architects how to design and implement on demand solutions using the thirteen capabilities of the IBM On Demand Operating Environment.
- WebSphere Process Server: Provides an overview, features, benefits, and system requirements.
- Workplace for Business Strategy Execution: Provides an overview, features, benefits, and system requirements.
- Part 15: Learn the basics of WebSphere Integration Developer.
- Part 18: Understand the insurance business process design and construction in more detail.
- New to SOA and Web services: Visit this content area if you are new to Service-Oriented Architecture and Web services.
- Search for Web services books at Safari Bookshelf.
Get products and technologies
-
Download a free trial version of
Workplace for Business Strategy Execution directly from developerWorks.
Discuss
-
Troubleshoot, brainstorm, and collaborate with your peers. Check out developerWorks blogs and get involved with the developerWorks community.

Murray Beaton is a senior software developer working with the SWG Technology Strategy and SOA Innovation team. His focus has been the creation and adoption of reusable assets surrounding the IBM On Demand and SOA initiatives. Contact Murray at beatonm@ca.ibm.com.

Christina Lau is a Senior Technical Staff Member at IBM. Christina is an architect on the SWG Technology Strategy and SOA Innovation team focusing on SOA, Business Innovation and Optimization, and Patterns Solutions. You can reach Christina at clau@ca.ibm.com.

