Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your profile (name, country/region, and company) is displayed to the public and will accompany any content you post. You may update your IBM account at any time.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

developerWorks Community:

  • Close [x]

Creating and sending alerts with IBM Business Process Manager V7.5

Exploring Service Component Architecture and business monitor action services using an end-to-end example

Bhargav Perepa , IT Specialist, IBM
Bhargav Perepa
Bhargav Perepa is a WebSphere Brand Architect and IT Specialist at IBM Federal Software Group in Washington D.C. He has been a WebSphere developer in the IBM Austin WebSphere Development Lab, and before that had Smalltalk and C++ development experience in IBM Chicago. Bhargav holds a Masters degree in Computer Sciences from the Illinois Institute of Technology in Chicago and an MBA degree from the University of Texas in Austin.

Summary:  This article shows you how to use IBM® Business Process Manager V7.5.0.1 to develop and send alerts to business dashboards using alert handlers (an Service Component Architecture (SCA) service handler and a web service handler program) and an end-to-end business process workflow (a BPEL application) and monitoring (a monitor measures application) sample. In the process, you'll learn about the runtime support and tooling provided by IBM Business Process Manager Advanced for developing and monitoring end-to-end business processes using an iterative development process that spans the life cycle of typical business process management application development

Date:  26 Oct 2011
Level:  Intermediate PDF:  A4 and Letter (3674 KB | 47 pages)Get Adobe® Reader®
Also available in:   Chinese

Activity:  12634 views
Comments:  

Introduction

You can think of a business process as a set of related and coordinated activities performed by people to achieve a business goal. Typically, the activities performed to achieve business goals consist of manual and automated tasks.

Business process management (BPM) is a disciplined lifecycle-based approach to achieving business innovation. The IBM BPM life cycle encompasses improving, designing, deploying and measuring business processes in a continuous cycle of process improvement using various tools and runtime environments, as shown in Figure 1. IBM's BPM approach helps facilitate the alignment of business and IT visions of an organization. Part of the IBM BPM suite, IBM Business Monitor provides end-to-end, comprehensive visibility into business processes spanning functional organizations of an enterprise or supply chain.


Figure 1. BPM life cycle
BPM life                     cycle

Additionally, IBM SOA-enabled BPM offerings help address process governance in an integrated, foundational manner with a Process Center capability, to achieve continuous, innovative business goals in a flexible and agile manner, as shown in Figure 2.


Figure 2. IBM support for BPM enabled by methodology
IBM support                     for BPM enabled by methodology

This article explains the BPM enabled by SOA methodology, consisting of tools, runtime environments and a defined approach, using an end-to-end example. In this article, you'll learn how to develop and send notification alerts to business dashboards using alert handlers--in this case, an SCA service handler program and web service handler programs. You'll also learn about the tooling support provided by Business Process Manager Advanced for iterative development as you perform the steps in this article.


The scenario

The Social Security Administration (SSA), an agency of the United States government, issues a nine-digit social security number (SSN) to US citizens, permanent residents and temporary legal working residents. This number is used to associate an individual's accounts with the SSA. Individuals need a social security number to work in the US. An SSN is also required to receive social security benefits and other additional government services. Today the SSN is widely used to identify an individual in the US.

In order to receive an SSN, an applicant needs to complete an SS-5 application form and provide documentation to prove age, identity, work eligibility and immigration status. The applicant needs to submit the completed form and documentation in person or by mail, depending on whether they are applying for the first time.

In this article, we'll walk through the Improve, Design, Deploy and Measure phases of BPM enabled by SOA methodology, using the example of a business process for issuing a social security number, which we'll call the SSN Issue process. First, you'll see how to use WebSphere® Business Modeler Advanced to model the process. In IBM Business Process Manager V7.5 you can perform process modeling using either IBM Process Designer or WebSphere Business Modeler Advanced (Modeler). Both tools are based on Eclipse tooling technology. If you want to architect, design, develop and deploy a process model application to BPMN runtime for execution, then you would be typically use IBM Process Designer. However, in this case, since we want to architect, design, develop and deploy our process model application to a BPEL runtime for execution, we'll use Modeler tooling. You have the option of architecting, designing and developing process models in Modeler, then exporting the process model as a BPMN2.0 export project and importing it into IBM Process Designer, if you want to deploy the process model application to a BPMN runtime for execution at a later stage. You could also execute some steps of the process model in the BPMN runtime and other steps in the BPEL runtime using an Advanced Integration Services implementation.

Because we're implementing the application in BPEL in this article, we'll author the process model in Modeler, then validate the process model and export the project for implementation. We will then use IBM Integration Designer to design a BPEL workflow application for the modeled process. We want this BPEL workflow application to emit custom events so that we can build custom key performance indicators (KPIs) for the workflow application. We'll use the Monitor Toolkit plug-in of IBM Integration Designer to build the monitor measures model for our workflow application. Using the Monitor Toolkit, we will build custom instance, aggregate, visual and event measurement models to keep track of the performance of our workflow application, while gaining visibility into its KPIs using dashboards. We'll deploy the workflow, as well as workflow monitoring applications, to the IBM Process Server and IBM Business Monitor Server runtimes, respectively. Finally, we'll monitor the performance of the running workflow application with Business Space dashboards. You could also export the KPI metrics that you custom design from the runtime operational environment and import them into the process model you'll design in Modeler for continuous and iterative process improvement. Because we'll implement the solution in BPEL, rather than BPMN, you could then import the custom KPI metrics from the runtime into the Modeler process model.


Improve phase: Create the business process model

In this phase, a business analyst with domain knowledge creates a business process model. The analyst could use either IBM Process Designer or Modeler to author process model in technology neutral manner. The process model graphically captures the semantics of business domain knowledge in BPMN represented business process model diagram. For our sample process, the business analyst creates a business process model using IBM Process Designer, shown in Figure 3. In order to gain a better understanding of the model and its continued viability and to further fine-tune it for a given set of prioritized business goals, the analyst may perform business process model simulation.


Figure 3. SSN Issue business process model
SSN Issue business                     process model

(See a larger version of Figure 3.)

Figure 4 shows the same sample process created by our business analyst using Modeler. Additionally, it shows the successful validation and simulation of the SSN Issue sample model. To perform process model simulation, the analyst performs resource modeling to the process by applying resources, such as skilled professionals, their schedules, cost and revenue rates, calendars, and other individual and bulk resources needed for the business process to perform, using queuing models to optimize desired criteria.


Figure 4. Business process simulation
Business process                     simulation

(See a larger version of Figure 4.)

In this article, we'll enrich our business process model structurally, by defining business attribute details such as cost, revenue, duration, classifier, and define technical attribute details such as interface, request, response, implementation and KPIs in the next iteration.

A business process architect is typically a technology-savvy business analyst, who refines the technology-neutral business process model into a IBM Process Server deployable business process model. In an organization, a business process architect and analyst could be same person wearing two different role based hats or two different individual professionals specialized for their respective job roles. The authoring tool facilitates the organizational needs seamlessly. Refining business process model involves changing the Modeler mode to IBM Process Server mode, resolving validation errors and further defining the logic for tasks involving decision-making. Additionally, the business process architect translates the business requirements into technical semantics by specifying technical attributes, as shown in Figure 5.


Figure 5. Business process technical attributes model
Business process                     technical attributes model

(See a larger version of Figure 5.)

In order to facilitate building an integrated IT solution, deployable to IBM Process Server, a business process architect uses the Recommended Export Option in Modeler to export the technical business model as a project interchange ZIP file, which contains all the runtime artifacts that make up the implementation model. The Recommended Export Option, shown in Figure 6, creates three related projects: two module projects and one library project. One of the generated module projects hosts the orchestration logic while the second generated module project hosts the implementation details. This option is recommended for optimal interoperability between Modeler and IBM Integration Designer.


Figure 6. Recommended Export Option
Recommended Export Option

Figure 7 shows the generated project tree.


Figure 7. Exported business process model in IBM Integration Designer
Exported business                     process model in IBM Integration Designer

Design phase: Import and refine the model

In the design phase, an integration designer imports the implementation model exported from Modeler into IBM Integration Designer. The skeleton implementation model graphically represents the business process to be realized technically. Figure 8 shows the BPEL process as it appears when imported into IBM Integration Designer.


Figure 8. SSN Issue BPEL process in IBM Integration Designer
SSN Issue BPEL                     process in IBM Integration Designer

The integration designer further refines the business process model by providing technical implementation details and completes the translation of business semantics into technical semantics by supplying implementation logic. For the BPEL SSN Issue model, the integration designer would provide simple Java™ implementations in the generated implementation module. In subsequent iterations, the developer would continue to provide richer of implementations for our process model tasks. For this example, we will now develop the implementation logic for the five SCA import components generated, as shown in the Figure 9.


Figure 9. Assembly diagram for implementing generated SCA components
Assembly diagram for                 implementing generated SCA components

Table 1 provides details of the Java component implementations.


Table 1. Provided Java implementations
Implementation Component Name Input/Output Object Type Implementation Method
ApplyByMailJavaImpl.java DataObject/DataObject public DataObject InputCriterion (DataObject input) {;}
ApplyInPersonJavaImpl.java DataObject/DataObject public DataObject InputCriterion (DataObject input) {;}
CompleteFormSS5JavaImpl.java DataObject/DataObject public DataObject InputCriterion (DataObject input) {;}
ProvideProofDocumentationJavaImpl1.java DataObject/DataObject public DataObject InputCriterion (DataObject input) {;}
ReceiveSSNJavaImpl.java DataObject/DataObject public DataObject InputCriterion (DataObject input) {;}

The implementation business logic features, for the most part, the tracing of parameters passed into the implementation logic. Figure 10 shows one of representative Java component implementations.


Figure 10. Java component implementation of ApplyByMailJavaImpl.java
Java component                     implementation of ApplyByMailJavaImpl.java

(See a larger version of Figure 10.)

We would also generate a new SSN for the applicant as part of our business logic implementation, as shown in Figure 11.


Figure 11. Java component implementation of ReceiveSSNJavaImpl.java
Java component                     implementation of ReceiveSSNJavaImpl.java

(See a larger version of Figure 11.)

An integration designer facilitates instrumentation of a business process model in order to develop a monitor measures model by enabling various events of interest to be generated for business process model steps in the form of XML/XSD formatted events. A fully implemented and deployed monitor measures model enables a line of business executive to monitor the business using dashboards. Figure 12 shows instrumentation of the SSN Issue logic entry and exit events.


Figure 12. Enabling event instrumentation for for monitoring SSN Issue process
Enabling event                     instrumentation for for monitoring SSN Issue process

The integration designer now assembles a monitor measures model J2EE application using the Integration Designer's Monitor Toolkit. This involves generating a monitor measures model J2EE application project, selecting events to monitor, running in an operational environment, and finally displaying business performance data on a Business Space dashboard. Developing and implementing our monitor measures model involves specifying logic for the Monitor Details Model, KPI Model, Dimensional Model, Visual Model and Event Model tabs in the Monitor Toolkit.

The monitor details model represents near real-time and instance information. This model captures basic request information, provides logic to keep count of the number of first-time applicants and number of non-first-time applicants, and logic to detect first-time applicants versus non-first-time applicants. It also provides logic to notify of applicant type (first-time versus non-first-time) on a per instance basis. Figure 13 shows the monitor details model, consisting of metric details such as First Name, Last Name, Middle Initial; instance triggers such as Detect First Time Applicant Trigger; instance counters such as Count – First Time Applicants; and instance events such as First Time Applicant Notify Event.


Figure 13. Monitor details model
Monitor details model

Figure 14 shows a summary view of instance metrics being calculated, counts being computed and notification events being generated upon termination of an instance running in a runtime operational environment. This monitoring flow view captures the key summary performance measures being computed on per instance basis.


Figure 14. Monitoring flow per instance
Monitoring flow per                     instance

In the KPI model, all the computations are performed on an aggregated basis, and the integration designer provides logic to keep track of totals, percentages and averages. Additionally, the developer provides logic to detect and notify of event occurrences -- of non-first-time applicant count exceeding a pre-specified threshold value. Figure 15 shows the KPI model consisting of average, total and percentage computations. We would generate a Non-First-Time Applicants – Exceeded Pre-determined Threshold trigger whenever we see a non-first-time applicant.


Figure 15. KPI model
KPI model

The dimensional model captures historical analytics. The developer provides logic for a basic dimensional model. Figure 16 shows the dimensional model consisting of dimensional analytics based on dates and geographic location (State).


Figure 16. Dimensional model
Dimensional                     model

The visual model depicts the business process model as an SVG diagram with instance or aggregate computational information super-imposed on the SVG diagram. The integration designer provides the logic for both the instance monitoring context and the aggregate KPI monitoring context business process model SVG diagrams as shown in Figure 17 and Figure 18, respectively.


Figure 17. Visual model - instance monitoring context
Visual model -                      instance monitoring context

(See a larger version of Figure 17.)


Figure 18. Visual model - KPI monitoring context
Visual model -                      KPI monitoring context

(See a larger version of Figure 18.)

The event model is used to define events. In the monitor measures model, the integration designer has defined three custom events of interest to us as shown in Figure 19, Figure 20, Figure 21, Figure 22. We will use these events to pass information to dashboard alerts.


Figure 19. Event model
Event model

Figure 20. FirstTimeApplicantEventMC event
FirstTimeApplicantEventMC event

Figure 21. NonFirstTimeApplicantEventMC event
NonFirstTimeApplicantEventMC event

Figure 22. NonFirstTimeApplicantEventKPI event
NonFirstTimeApplicantEventKPI event

An integration designer can engineer a monitor measures model application such that when events of interest occur in the deployed business process model application, appropriate notifications (a dashboard alert, a cell phone call, a pager call, or a web service or SCA service application call), are generated and routed. Notification or web service or SCA templates provide the necessary infrastructure to invoke the appropriately configured handlers to disseminate the notifications generated. The system administrator needs to configure the monitor action services in the deploy phase to route the notifications to designated destinations.

As part of the monitor measures model development, we want to generate and route notifications to the dashboard, web service and SCA service handler applications. In order to achieve this, we need to assemble web service and SCA service handler applications, as shown in Figure 23.


Figure 23. SCA and web service handlers
SCA and web service                     handlers

In order to be invoked by the monitor action services infrastructure, a web service method signature should feature a single variable of String type as an input parameter. This input String type should contain the XML string representation of the incoming situation event. A local implementation of web service is invoked by default when both local and remote implementations are available and remote implementation is configured explicitly as a runtime optimization.

Figure 24 shows the implementation of the web service handler application.


Figure 24. Web service handler implementation
Web                      service handler                     implementation

(See a larger version of Figure 24.)

In order to get invoked by the monitor action services infrastructure, an SCA service must implement the ActionManagerNotification interface defined in WBI-ActionManagerLibrary. This SCA service receives information from the monitor action services infrastructure in the form of a SituationEvent data type object, which is also defined in the WBI-ActionManagerLibrary. Figure 25 shows the SCA Service service handler application implementation.


Figure 25. SCA service handler implementation
SCA service handler                     implementation

(See a larger version of Figure 25.)


Deploy phase: Deploy the model and monitoring application

In this phase, a J2EE administrator deploys the business process model application, as well as the monitor measures model application, to an operationally configured IBM Business Monitor Server with an IBM Process Server profile. As part of this deploy phase, the administrator configures monitor action services notification, web service and SCA templates.

Configure notification templates

We want to send a notification alert to the Business Space Alert dashboard when we receive an SSN application from a first-time applicant at a monitoring context instance level. As part of this alert notification, we want to send the applicant request information. To accomplish this, we need to create a new notification template for a First Time Process Notification MC Outbound Event. We will use the information shown in Table 2 to create the notification template shown in Figure 26.


First Time Process Notification MC Outbound Event details
Notification template configuration First Time Process Notification MC Outbound Event
Template name First Time Process Notification MC Outbound Event
Description First Time Process Notification MC Outbound Event
Default action service type Dashboard Alert
‘To’ query type User id
To admin
Query base N/A
Subject Re. First Time Process Notification MC Outbound Event
Body First Time Process Notification MC Outbound Event Details: %lastName%, %middleInitial%,%firstName%,%isFirstTime%,%city%,%state%,%dataSubmitted%,%dateCompleted%.


Figure 26. First Time Process Notification MC Outbound Event specification
First Time Process                     Notification MC Outbound Event specification

We want to send a notification alert to Business Space Alert dashboard when we receive an SSN application from a non-first-time applicant at a monitoring context instance level. As part of this alert notification, we want to send the applicant request information. To accomplish this, we need to create a new notification template for a Non First Time Process Notification MC Outbound Event. We will use the information shown in Table 3 to create the notification template shown in Figure 27.


Table 3. Non First Time Process Notification MC Outbound Event details
Notification template configuration Non First Time Process Notification MC Outbound Event
Template name Non First Time Process Notification MC Outbound Event
Description Non First Time Process Notification MC Outbound Event
Default action service type Dashboard Alert
‘To’ query type User id
To admin
Query base N/A
Subject Re. Non First Time Process Notification MC Outbound Event
Body Non First Time Process Notification MC Outbound Event Details: %lastName%, %middleInitial%,%firstName%,%isFirstTime%,%city%,%state%,%dataSubmitted%,%dateCompleted%.


Figure 27. Non First Time Process Notification MC Outbound Event specification
Non First Time                     Process Notification MC Outbound Event specification

We want to send a notification alert to the Business Space Alert dashboard when we receive an SSN application from a non-first-time applicant at an aggregation level. As part of this alert notification, we want to send the applicant request information. To accomplish this, we need to create a new notification template for a Non First Time Applicant Notify KPI Event. We will use information shown in Table 4 to create the notification template shown in Figure 28.


Table 4. Non First Time Applicant Notify KPI Event details
Notification template configuration Non First Time Applicant Notify KPI Event
Template name Non First Time Applicant Notify KPI Event
Description Non First Time Applicant Notify KPI Event
Default action service type Dashboard Alert
‘To’ query type User id
To Admin
Query base N/A
Subject Re. Non First Time Applicant Notify KPI Event
Body Non First Time Applicant Notify KPI Event Details: %Total - Non First Time Applicants At KPI Level%.


Figure 28. Non First Time Applicant Notify KPI Event specification
Non First Time                     Applicant Notify KPI Event specification

Summary of notification templates configuration

At this point in our configuration, we have two instance notification templates and one aggregate notification template, as shown in Figure 29. Each of these notifications contain some context information passed to them and each appears in the Business Space Alert dashboard Web 2.0 portlet.


Figure 29. Notifications summary
Notifications                     summary

(See a larger version of Figure 29.)

Configure web service template

We want to send a notification alert to a web service notification handler when we receive a Non First Time Applicant Notify KPI Event at an aggregate KPI context level. As part of this notification, we want to send the event information. To accomplish this, we need to create a new notification template for SSNIssueProcessWSActionManagerNotificationHandler. We will use the information shown in Table 5 to create the notification template shown in Figure 30.


Table 5. Web service template details
Web services template configuration SSNIssueProcessWSActionManagerNotificationHandler
Template name SSNIssueProcessWSActionManagerNotificationHandler
Description SSNIssueProcessWSActionManagerNotificationHandler
Target namespace http://SSNIssueProcess_lib/WebServiceCBEXMLEventHandler/Binding
Service name WebServiceCBEXMLEventHandler_WebServiceCBEXMLEventHandlerHttpService
End point address https://localhost:9444/SSNIssueProcessWSActionManagerNotificationHandler/services/WebServiceCBEXMLEventHandler_WebServiceCBEXMLEventHandlerHttpPort
Port type wsdl:port
Operation name processCBEXMLEvent
Input message name processCBEXMLEvent


Figure 30. Web services template configuration
Web services                     template configuration

Summary of web service template configuration

At this point in our configuration, we have one instance of a web service template, as shown in Figure 31. This web service template contains situation event information passed to it.


Figure 31. Installed web services templates summary
Installed web                     services templates summary

(See a larger version of Figure 31.)

Configure SCA template

We want to send a notification alert to an SCA service notification handler when we receive a First Time Process Notification MC Outbound Event at a monitoring context level. As part of this notification, we want to send the event information. To accomplish this, we need to create a new notification template for SSNIssueProcessSCAActionManagerNotificationMediationModule. We will use the information shown in Table 6 to create the notification template shown in Figure 32.


Table 6. SCA service template details
SCA template configuration SSNIssueProcessSCAActionManagerNotificationMediationModule
Template name SSNIssueProcessSCAActionManagerNotificationMediationModule
Description SSNIssueProcessSCAActionManagerNotificationMediationModule
Module name SSNIssueProcessSCAActionManagerNotificationMediationModule
Export reference SSNIssueProcessSCAActionManagerNotificationMediationModuleExport


Figure 32. SCA template configuration
SCA template                     configuration

Summary of SCA template configuration

At this point in our configuration, we have one instance of an SCA service template, as shown in Figure 33. This SCA service template contains situation event information passed to it.


Figure 33. Installed SCA templates summary

Bind situation events to action services

An administrator now needs to bind situation events to monitor action services by establishing a mapping between an action template and a situation event. The monitor action services infrastructure looks up the action catalog using BusinessSituationName field value extracted from situation events, to identify the appropriate action services to invoke upon receiving situation events.

We want to bind the notification template First Time Process Notification MC Outbound Event (Outbound Event) to the situation events shown in Table 7. Figures 34 and 35 shows how this binding is accomplished. Figure 36 shows the completed template binding to the situation events.


Table 7. First Time Process Notification MC Outbound Event - installed situation event bindings details
Binding name First Time Process Notification MC Outbound Event
Description First Time Process Notification MC Outbound Event
Category First Time Process Notification MC Outbound Event
Template name First Time Process Notification MC Outbound Event
Binding name SSNIssueProcessSCAActionManagerNotificationMediationModule
Description SSNIssueProcessSCAActionManagerNotificationMediationModule
Category SSNIssueProcessSCAActionManagerNotificationMediationModule
Template name SSNIssueProcessSCAActionManagerNotificationMediationModule


Figure 34. First Time Process Notification MC Outbound Event – installed situation event bindings
First Time Process                     Notification MC Outbound Event – installed situation event                     bindings

Figure 35. First Time Process Notification MC Outbound Event – installed situation event bindings
First Time Process                     Notification MC Outbound Event – installed situation event                     bindings

Figure 36. First Time Process Notification MC Outbound Event – installed situation event bindings
First Time Process                     Notification MC Outbound Event – installed situation event                     bindings

(See a larger version of Figure 36.)

We want to bind the notification template Non First Time Process Notification MC Outbound Event to the situation events shown in Table 8. Figure 37 shows how we accomplish this binding. Figure 38 shows the completed template binding to the situation events.


Table 8. Non First Time Process Notification MC Outbound Event - installed situation event bindings details
Binding name Description Category Template name
Non First Time Process Notification MC Outbound Event Non First Time Process Notification MC Outbound Event Non First Time Process Notification MC Outbound Event Non First Time Process Notification MC Outbound Event


Figure 37. Non First Time Process Notification MC Outbound Event - installed situation event bindings details
Non First Time                     Process Notification MC Outbound Event - installed situation event                     bindings details

Figure 38. Non First Time Process Notification MC Outbound Event – installed situation event bindings
Non First Time                     Process Notification MC Outbound Event – installed situation event                     bindings

(See a larger version of Figure 38.)

We want to bind the notification template Non First Time Applicant Notify KPI Event to the situation events shown in Table 9. Figures 39 and 40 show how we would accomplish this binding. Figure 41 shows the completed template binding to the situation events.


Table 9. Non First Time Applicant Notify KPI Event - installed situation event bindings details
Binding name Non First Time Applicant Notify KPI Event
Description Non First Time Applicant Notify KPI Event
Category Non First Time Applicant Notify KPI Event
Template name Non First Time Applicant Notify KPI Event
Binding name SSNIssueProcessWSActionManagerNotificationHandler
Description SSNIssueProcessWSActionManagerNotificationHandler
Category SSNIssueProcessWSActionManagerNotificationHandler
Template name SSNIssueProcessWSActionManagerNotificationHandler


Figure 39. Non First Time Applicant Notify KPI Event – installed situation event bindings
Non First Time                     Applicant Notify KPI Event – installed situation event                     bindings

Figure 40. Non First Time Applicant Notify KPI Event – installed situation event bindings
Non First Time                     Applicant Notify KPI Event – installed situation event bindings

Figure 41. Non First Time Applicant Notify KPI Event – installed situation event bindings
Non First Time                     Applicant Notify KPI Event – installed situation event                     binding

(See a larger version of Figure 41.)

Summary of installed situation event bindings

At this point in the configuration, we have three installed situation event bindings, as shown in Figure 42.


Figure 42. Installed situation event bindings summary
Installed situation                     event bindings summary

(See a larger version of Figure 42.)

Verify and test

All the applications are now deployed to the runtime, and we are now ready to begin testing. The applications that are operational at this time are:

  • A business process model application
  • A business process monitor measures model application designed to monitor the performance of the business process model application
  • An SCA alert service handler application
  • A web service alert service handler application

Prior to submitting any requests, we want to make sure that our web service alert service handler application is configured correctly and running properly. To do this, point your browser to the following URL, as shown in Figure 43.


https://localhost:9444/SSNIssueProcessWSActionManagerNotificationHandler/services/WebServiceCBEXMLEventHandler_WebServiceCBEXMLEventHandlerHttpPort
Figure 43. Web service alert handler service validation
Web service alert                     handler service validation

(See a larger version of Figure 43.)

In order to simulate a day in life of this business, we will submit two requests to the business process model application, one representing a first-time applicant applying for an SSN and the other representing a non-first-time applicant applying for an SSN.

Figure 44 shows the first-time applicant applying for SSN request.


Figure 44. First-time applicant request processing validation - input
First-time                     applicant request processing validation - input

Figure 45 shows the console response to the first-time applicant applying for an SSN request.


Figure 45. First-time applicant request processing validation - response
First-time                     applicant request processing validation - response

(See a larger version of Figure 45.)

Figure 46 shows the non-first-time applicant applying for an SSN request.


Figure 46. Non-first-time applicant request processing validation - input
Non-first-time                     applicant request processing validation - input

Figure 47 shows the console response to the non-first-time applicant applying for an SSN request.


Figure 47. Non-first-time applicant request processing validation - response
Non-first-time                     applicant request processing validation - response

(See a larger version of Figure 47.)


Measure phase: Monitor the process using dashboards

We are now set to verify that our dashboards are populated with near real-time and historical data. Additionally, we need to make sure that our SCA and web service alert handlers are called by the monitor action services infrastructure with the appropriate situation event data so that we can process the event in the alert logic.

Figure 48 shows the populated Web 2.0 Instances dashboard.


Figure 48. Web 2.0 Instances dashboard
Web 2.0 Instances                     dashboard

Figure 49 shows the Web 2.0 Diagrams dashboard for monitor context.


Figure 49. Web 2.0 Diagrams Monitor Context dashboard
Web 2.0 Diagrams                     Monitor Context dashboard

(See a larger version of Figure 49.)

Figure 50 shows the Web 2.0 Alerts dashboard. It contains two entries of instance alerts and one entry of KPI alert.


Figure 50. Web 2.0 Alerts dashboard
Web 2.0 Alerts                     dashboard

(See a larger version of Figure 50.)

Figure 51 shows the details view of the Web 2.0 Alerts dashboard for a KPI alert with situation event data being passed in to the alert handling logic.


Figure 51. Web 2.0 Alerts dashboard - KPI alert
Web 2.0 Alerts                     dashboard - Details view

(See a larger version of Figure 51.)

Figure 52 shows the details view of the Web 2.0 Alerts dashboard for a monitoring context alert with situation event data being passed in to the alert handling logic.


Figure 52. Web 2.0 Alerts dashboard - Monitoring context alert
Web 2.0 Alerts                     dashboard - Monitoring context                     alert

(See a larger version of Figure 52.)

Figure 53 shows the view of Web 2.0 KPIs dashboard.


Figure 53. Web 2.0 KPIs dashboard
Web 2.0 KPIs                     dashboard

(See a larger version of Figure 53.)

As shown below, Figure 54 shows the view of the Web 2.0 Alert Manager. You can see two entries for monitoring context alerts, one entry each for KPI context alerts, an SCA Service handler alert and a web service handler alert.


Figure 54. Web 2.0 Alert Manager dashboard
Web 2.0 Alert                     Manager dashboard

(See a larger version of Figure 54.)

Figure 55 shows the console output of the web service handler logic.


Figure 55. Web service handler console output
Web service handler                     console output

(See a larger version of Figure 55.)

As shown below, Figure 56 shows the console output of the SCA service handler logic.


Figure 56. SCA service handler console output
SCA service handler                     console output

(See a larger version of Figure 56.)


Summary

In this article, you have learned the following:

  • How to design a process model using either IBM Process Designer or WebSphere Business Modeler Advanced.
  • How to design implementation logic, using the provided Java implementations as examples, for an SSN Issue process application using IBM Integration Designer tool.
  • How to design custom KPI metrics for the SSN Issue process application using the IBM Integration Designer Monitor Toolkit plug-in.
  • How to design and develop web service and SCA event handler implementations for the SSN Issue process application.
  • How to deploy the SSN Issue process and the SSN Issue process monitoring applications to IBM Process Server and IBM Business Monitor Server runtimes.
  • How to configure notification templates for dashboard alerts and web service and SCA event handlers, and how to bind events to action services.
  • How to verify and test various aspects of the SSN Issue process application elements, including web services, event generation, implementation logic, and so on.
  • How to configure Business Space dashboards and validate the functioning of the process and the process monitoring applications.
  • How to verify and validate the correct emitting of the web service and SCA notification alerts in the IBM integration Designer and the SystemOut.txt log file.

In a standard BPM life cycle, the next step would be to review the custom-engineered KPI metrics for bottlenecks, resource contentions, and resource utlization inefficiences using Business Space dashboards, and take necessary measures to improve the business process implementation.


Acknowledgments

The author gratefully acknowledges the help he received from Dong Zhao, IBM Client Support Software Engineer, IBM China.



Downloads

DescriptionNameSizeDownload method
Modeler SSN Issue Process Model ProjectMOD_08212011_v1_GOLD_SSNIssueProcess.zip111KBHTTP
Integration Designer SSN Issue ProjectMONIIDImpl_08212011_v1_GOLD_SSNIssueProcess.zip1.2MBHTTP
Integration Designer SSN Issue Project08212011_v1_GOLD_SystemOut.zip76MBHTTP

Information about download methods


Resources

About the author

Bhargav Perepa

Bhargav Perepa is a WebSphere Brand Architect and IT Specialist at IBM Federal Software Group in Washington D.C. He has been a WebSphere developer in the IBM Austin WebSphere Development Lab, and before that had Smalltalk and C++ development experience in IBM Chicago. Bhargav holds a Masters degree in Computer Sciences from the Illinois Institute of Technology in Chicago and an MBA degree from the University of Texas in Austin.

Report abuse help

Report abuse

Thank you. This entry has been flagged for moderator attention.


Report abuse help

Report abuse

Report abuse submission failed. Please try again later.


developerWorks: Sign in


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Select information in your profile (name, country/region, and company) is displayed to the public and will accompany any content you post. You may update your IBM account at any time.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


Rate this article

Comments

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Business process management, WebSphere
ArticleID=772987
ArticleTitle=Creating and sending alerts with IBM Business Process Manager V7.5
publish-date=10262011