Skip to main content

Business Process Management with SOA, Part 2: Improve your business process with business rules, forms and content management

Christina Lau (clau@ca.ibm.com), Senior Technical Staff Member, IBM 
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 (peddle@ca.ibm.com), Advisory Software Developer, IBM
Scott Peddle photo
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.
Bhadri Madapusi (bhadrim@ca.ibm.com), Advisory Software Developer, IBM 
Bhadri Madapusi is a Software Developer working in the IBM Toronto Lab. He earned his MSc in Information Systems from BITS, India, and his MSc in Computer Science from Queens University, Canada. His interests include software modeling, design patterns, and data management. You can read Bhadri at bhadrim@ca.ibm.com.

Summary:  In Part 2 of this series, you'll learn how to use some of the new features in WebSphere® Business Modeler V6.1 to enhance your business process definitions so that process owners can model their end-to-end business processes regardless of where they are deployed.

View more content in this series

Date:  30 Jan 2008
Level:  Intermediate
Activity:  333 views

Introduction

Part 1 of this series showed how you can use WebSphere Business Monitor (Monitor) to track performance and to determine whether a business process is meeting its goals. Based on real metrics, the business can prioritize which particular process to focus on first in order to improve efficiency or pinpoint problems before they occur. In our simple claim process scenario, we concluded that the Express Claim task is the task that we want to focus on optimizing first. In Part 2, we'll look at how to use some of the new WebSphere Business Modeler (Modeler) V6.1 features to enhance the Express Claim task.

The download provided with this article contains the Modeler process models created in this article, as well as the implementation artifacts exported from the process models.

Improve the Express Claim business scenario

Using Modeler, you can document and over time refine your business processes to add in new process elements that reflect your changing business requirements. In our simple claim process, we'll show you some of these modeling techniques by making the following three changes to reflect our business needs:

  1. Add a new step to assign an insurance adjuster to investigate the claim. A simple business rule is used to determine which insurance adjuster to assign. For example, the decision on which adjuster to assign might be based on the claim geography or the nature of the claim (for example, fire or flood).
  2. Add a new form to enable the insurance adjuster to manually approve or disapprove the claim, as well as to record the claim amount to be paid by the insurance company.
  3. Improve the cycle time of the business process by automatically archiving the claim documents for compliance purposes.

Convert the Express Claim task to a global process

The first step is to convert the Express Claim task into a separate global process so that we can automate some additional steps. To do that, right-click on ExpressClaim and select Convert to => Global Process, as shown in Figure 1. Accept the default name and click Finish.


Figure 1. Convert the ExpressClaim task to Global Process
Convert the ExpressClaim task to Global Process

This creates a new global process called ExpressClaim in the project tree and changes the ExpressClaim task element into a subprocess element as shown in Figure 2.


Figure 2. Updated SimpleClaimProcess – ExpressClaim is converted into a separate process
Updated SimpleClaimProcess – ExpressClaim is converted into a separate process

Model the new ExpressClaim process

The second step is finish modeling the new ExpressClaim process. As shown in Figure 3, the ExpressClaim process has three main steps.

  1. Automatically assign an insurance adjuster to this claim incident.
  2. Insurance adjuster contacts the insured to examine the damages and to come up with a claim amount.
  3. Archive the documents associated with this claim incident automatically for auditing and compliance purposes.

In the following sections, we'll discuss in detail how to model each step. In addition to creating a process model that is useful for documentation, the same process model will also be suitable for executing on both the WebSphere Process Server (Process Server) and FileNet® run-times. We'll outline the modeling constraints to make sure the process models can generate implementation artifacts that require minimal changes in WebSphere Integration Developer (Integration Developer) and FileNet P8 Process Designer.


Figure 3. The ExpressClaim process
The ExpressClaim process

Use business rules to assign an insurance adjuster

Business rules provide a way to implement and enforce business policies through the externalization of decision logic. This allows business processes to easily modify certain behavior. In this example, we'll define a business rule to assign an insurance adjuster based on the claim geography location. The location can be North West, North East, South West or South East region.

To create business rules in Modeler, drag the Business Rule Task element Business Rule Task Element from the palette, drop it into the process diagram and change the business rule task name to Assign Insurance Adjuster as shown in Figure 3.

Next click the Assign Insurance Adjuster task and select the Business Rules tab as shown in Figure 4. You can create a number of business rules for a task. You can also decide when a business rule should be run by setting its start and end date in the Scheduling pane.


Figure 4. Assign Insurance Adjuster business rule
Assign Insurance Adjuster business rule

To add the new Assign Insurance Adjuster Rule business rule, click Add. In the Define Business Rule dialog, add four If-Then rules to indicate which insurance adjuster to assign based on the claim location, as shown in Figure 5. For example, if the location is "North West", then the approver is set to "Jane Smith".


Figure 5. Adding If-Then rules for assigning an insurance adjuster
Adding If-Then rules for assigning an insurance adjuster

Add a form for insurance adjuster to enter information

Human tasks represent activities that need to be handled by human resources. A human task can include escalation logic and identify actions to take if the task does not reach a specified state within a specified period of time. Since a human task requires human interactions, it's quite common to have an associated form for gathering input for the task or to produce related output. Modeler V6.1 added support for Lotus® Forms so that you can create forms based on a human task, or associate existing forms with a human task.

To create a human task in Modeler, drag the Human Task element Human Task Element from the palette, drop it into the process diagram and change the human task name to Process Claim, as shown in Figure 3.

To quickly create a form for the Process Claim task, right-click on the task and select Generate Form, as shown in Figure 6. Select New Form, and enter a name such as ProcessClaimForm to generate a new form.


Figure 6. Generating a form for a human task
Generating a form for a human task

The generated ProcessClaimForm is added to the project tree, and automatically associated with the Process Claim human task as shown in Figure 7.


Figure 7. Generated form is associated with the task
Generated form is associated with the task

Figure 8 shows the generated form in the Lotus Forms Viewer. The Claim business item is used to define the input field names and types for the form. The insurance adjuster will use the ClaimApproved checkbox to indicate whether the claim is approved or disapproved. You can edit the content or layout of the form using Lotus Forms Designer, which can be installed into Modeler.


Figure 8. Using Lotus Forms Viewer to view the generated form
Using Lotus Forms Viewer to view the generated form

Add a process to archive documents

For compliance purposes, you might need to store any paper documents associated with the claim, such as photos of an accident or other signed documents. These stored documents need to be managed and easily searchable. The FileNet P8 platform provides excellent services to manage your enterprise content. These services can be easily integrated into your overall business process with the new Modeler V6.1 FileNet P8 support.

As shown in Figure 3, we'll add a third task called ArchiveClaim to archive the claim documents. This task corresponds to the new ArchiveClaim subprocess, shown in Figure 9. It is important to define ArchiveClaim as a separate process because FileNet XPDL files can only be exported at a process level.


Figure 9. ArchiveClaim subprocess
ArchiveClaim subprocess

In the ArchiveClaim process, a simple decision, IsClaimApproved, is used to route approved claims to the Archive Approved Claim task and rejected claims to the Archive Un-approved Claim task. This facilitates the archival of approved and rejected claim documents to separate folders in FileNet P8, as we'll describe in Part 3 of this series.

In Modeler, data flow is modeled within business processes, with one process element passing data to another through a connection. However, FileNet P8 does not include data flow. Instead, FileNet uses process-level variables that the steps reference to get data. To bridge these two paradigms, we need to use repositories to pass data if the process model is designed for FileNet execution. Process elements should store data in repositories and other process elements should access the repositories to get the data. Using repositories to pass data ensures proper conversion to FileNet process-level variables when the process model is exported.

To create the ClaimApprovedRep repository, drag the repository icon to the process diagram. The data type associated with ClaimApprovedRep is a Boolean type because it is used by the IsClaimApproved decision node to determine which task to route to based on the value of the repository data.

To associate the ClaimApprovedRep repository with the conditions on the outgoing decision branches, select the IsClaimApproved decision node and click the Output branches tab as shown in Figure 10. Select the Approved branch, and scroll to the Decision Branch Condition section to review how this condition is described using the ClaimApprovedRep:

'Claims Processing Catalog.ArchiveClaim.ClaimApprovedRep' is equal to true

Next select the NotApproved branch and review the condition that is described for the unapproved branch:

'Claims Processing Catalog.ArchiveClaim.ClaimApprovedRep' is equal to false


Figure 10. Setting output branch conditions using ClaimApprovedRep repository
Setting output branch conditions using ClaimApprovedRep repository

To create the ClaimNumberRep repository, drag the repository icon to the process diagram. The data type associated with ClaimNumberRep is an Integer type because it is used to carry the claim number. Part 3 discusses how to initialize the data for use by FileNet.

Export the artifacts to Process Server and FileNet

Now that you've refined the modeling of the claim process, you can export the process models to both WebSphere Process Server and the FileNet run-time.

In the project tree, select SimpleClaimProcess => Export. In the Export dialog, select WebSphere Integration Developer to export both SimpleClaimProcess and ExpressClaim process as Integration Developer artifacts as shown in Figure 11.


Figure 11. Export SimpleClaimProcess and ExpressClaim as Integration Developer artifacts
Export SimpleClaimProcess and ExpressClaim as Integration Developer artifacts

Next select ArchiveClaim => Export. In the Export dialog, select FileNet Business Process Manager (xpdl) to export it as a FileNet artifact as shown in Figure 12.


Figure 12. Export ArchiveClaim as FileNet artifacts
Export ArchiveClaim as FileNet artifacts

In Part 3 of this series, we'll show you how to customize the implementation artifacts in Integration Developer and FileNet P8 to create a running end-to-end business process.


Summary

In this article, you learned how you can use some of the new features in WebSphere Business Modeler V6.1 such as business rules, Lotus Forms and FileNet support to enhance your existing business processes. In the next article, you'll learn how to import the generated artifacts into Integration Developer and FileNet and then modify them so that the BPEL process can invoke the FileNet process. Using advanced Web services invocation techniques, you'll see how you can easily link these processes together to implement and deploy BPM solutions that seamlessly connect people, processes, content and systems.



Download

DescriptionNameSizeDownload method
Sample workspace artifactsdownload.zip536KBHTTP

Information about download methods


Resources

Learn

Get products and technologies

About the authors

Christina Lau

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 photo

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.

Bhadri Madapusi

Bhadri Madapusi is a Software Developer working in the IBM Toronto Lab. He earned his MSc in Information Systems from BITS, India, and his MSc in Computer Science from Queens University, Canada. His interests include software modeling, design patterns, and data management. You can read Bhadri at bhadrim@ca.ibm.com.

Comments (Undergoing maintenance)



Trademarks  |  My developerWorks terms and conditions

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere
ArticleID=284020
ArticleTitle=Business Process Management with SOA, Part 2: Improve your business process with business rules, forms and content management
publish-date=01302008
author1-email=clau@ca.ibm.com
author1-email-cc=crothemi@us.ibm.com
author2-email=peddle@ca.ibm.com
author2-email-cc=crothemi@us.ibm.com
author3-email=bhadrim@ca.ibm.com
author3-email-cc=crothemi@us.ibm.com

My developerWorks community

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Rate a product. Write a review.

Special offers