Overview

Part 1: Conceptual Approach – Human-centric scenario

This document describes an advanced human-centric scenario showing the interaction of a former WebSphere Lombardi Edition (WLE) process calling a process implemented by the former WebSphere Process Server (WPS) process engine. Both process engines are now combined in a single process engine, now called IBM Business Process Manager v7.5.  

Throughout this document – even if we now have a single process engine in version 7.5 – we will use the known but former product, features, and / or capability names when talking about the integration of both engines.

The integration of WLE and WPS can be achieved via existing Web Service technology. However, now in IBM Business Process Manager v7.5 new integration capabilities are offered supporting Service Component Architecture (SCA) standard - called 'Advanced Integration Service'. The SCA-based integration between WLE and WPS is explained, demonstrated and executed with the sample process model used in the exercise. Y

There is a similar document available for a so called straight-through processing (STP) scenario, where a WPS process calls a WLE process to provide new ways of manual interaction required in business process automation scenarios. How this is done in detail is explained in the Procurement sample, listed in the Interaction Samples section of the Version 7.5 samples.

In our scenario, the development of a process application (PA) demonstrating the interaction of the formerly two process engines includes the development of two different processes done by two user roles (personas):

  1. First there is Technical Business Analyst named Tania using IBM Process Designer (formerly known as IBM WebSphere Lombardi Edition Authoring Environment (WLE AE)), and
  2. Second an Integration Developer named Igor, using IBM Integration Designer (formerly known as IBM WebSphere Integration Developer (WID))

figure1

Figure 1 – IBM Business Process Manager, simplified architecture for prototyping and testing

For sure if one person has all the skills required, just one person can complete a business process scenario as described here in the advanced hiring sample.

As you can see in Figure 1, both tools (IBM Process Designer and IBM Integration Designer) are connected to a common repository named Process Center. Process Center is the central repository that holds all business process and integration-relevant data to grant full synchronization between the business level and IT level artifacts required to provide an executable process application (PA). For the sake of our sample scenario here, not the full IBM Business Process Manager runtime capabilities are required, we can use a simplified runtime environment sufficient for testing and prototyping, which is called Playback Server, running directly on Process Server.

Now, in order build the human-centric process application (PA), Tania and Igor will work as described here in the following:

  1. Tania starts with the design of the business process using IBM Process Designer. This includes the definition of a service request, which will be handed over to Igor for implementation. This is known as the top-down scenario.
  2.  Igor takes over this service request definition via Process Center, and implements the service in IBM Integration Designer. Once the service implementation is completed, Tania can test the completed PA in Process Designer executing it on the Playback Server 

A visual description of this is illustrated here in figure 2:

business scenario

Figure 2 – Human-centric scenario, user role steps to complete the sample

In detail, Tania and Igor are performing the following steps:

  1. During her basic business process modeling / design work in IBM Process Designer, Tania realizes that the business process does require a specific service, which may or may not yet exist, but which will not be modeled nor designed in the business process model itself. She decides to create a new service, which does serve as a service template for Igor to develop the new service, or to find an existing artifact that is already providing the required service implementation
  2. In order to precisely describe what the new service needs to return in terms of business data, Tania describes the service interface in IBM Process Designer. As long as the service is not implemented by Igor, she can test the business process in IBM Process Designer on the Playback Server which emulates the service to manually provide data to the services input and output data containers
  3. Igor is using IBM Integration Designer to implement the requested service. In order to see not yet implemented services, he logs in to Process Center and retrieves the service requested by Tania. Igor sees a service template, including all relevant aspects like input und output data definitions, which however is flagged 'unimplemented'
  4. In IBM Integration Developer, Igor implements the service exploiting one or more of the many capabilities provided by the tool. In our case, Igor uses a number of existing artifacts to connect to various back-end systems and orchestrates those in a BPEL process, which allows for a fully automated execution of the back-end orchestration not requiring any human interaction. When done, he is testing the BPEL process using the unified test environment of IBM Integration Developer. Once he sees that the service implementation works fine, he publishes the implemented service back to Process Center
  5. Tania will be informed about the successfully done and completed service implementation and can now run the PA on the Playback Server calling the new service. Now, the service is no longer emulated, but the real service is called, invoked and executed, returning the data as requested by the service. This completes the testing of the PA prototype, and the sample scenario. (when moving on to taking this PA into production, IT administrators would take over the PA performing more tests on a production-like test environment, however not requiring any changes to the already completed PA.)

In order to create or complete a PA, Tania as well as Igor could use existing artifacts, be it in IBM Process Designer or IBM Integration Designer. Both tools support various mechanisms to take advantage of already existing assets.

This document for the human-centric scenario focuses on the top-down approach. It is assumed that the reader is already familiar with the modeling concepts of IBM Process Designer (formerly known as IBM WLE Authoring Environment) and how to develop BPEL processes with IBM Integration Designer (formerly known as IBM WebSphere Integration Developer).

This scenario will start with an initial business process design done in IBM Process Designer, and does then demonstrate in detail how to invoke a BPEL process implemented / provided in IBM Integration Designer via the SCA integration, exploiting the new Advanced Integration Services.    

The document will not cover:


Part 2: Development Approach – Human-centric scenario

The development of this solution that consists of business process design (BPD) modeled in IBM Process Designer and a new service automatically accessing back-end systems developed in IBM Integration Designer  involves several steps and to develop new artifacts that are finally centrally stored and shared in Process Center.

How this is done, and what artifacts are created where in what sequence is shown in Figure 3:

development approach

Figure 3 – Sequence how the sample is developed

Here is a more detailed description of how to implement such a scenario (it requires that your are familiar with the tools….if this is not the case, you can explore and run the provided human-centric sample named ‘Hiring Sample Advanced’, described later):

  1. Open IBM Process Designer and develop your BPD. If one process step requires a service (which e.g. does not yet exist), create an Advanced Integration Service, give it a name and assign the input and output Business Objects accordingly.
  2. When done, save your work to publish your BPD to Process Center
  3. Open IBM Integration Designer and connect to Process Center, to retrieve new requested services seeking for implementation. All services not yet implemented will be marked with ‘unimplemented’. Use the service implementation wizard to create an implementation template. After that, the real implementation needs to be done, which may include to:
    • Create a BPEL process
    • Access existing artifacts or create new ones
  4. Test your service implementation
  5. When done, refresh and publish the service implementation back to Process Center, to make it available for the BPD requesting the service
  6. In IBM Process Designer, use the inspector to run and test the BPD on the Playback Server, now invoking the service implementation completed in IBM Integration Designer

This may be quite some work to do, and for the un-experienced user of IBM Business Process Manager Advanced v7.5, a completed and executable human-centric scenario is provided, named ‘Advanced Hiring Sample’. In order to run and execute it, do the following:

This is it! You now have successfully run a BPD that calls a BPEL process via the SCA integration! If you want to understand more details, there is more to come on the build the sample section, and a detailled description how to run the sample is provided in the run the sample section.

Part 3: Business Scenario – Human-centric scenario

The development steps to build, deploy, test and run the human-centric sample are shown in the Advanced Hiring Sample, which is a rather simple process allowing managers to hire new people within their department. As this is a rather human intensive process, the BPD is designed in IBM Process Designer and looks as illustrated in Figure 4:

How the process looks like is shown in Figure 4.
 

processmodel

Figure 4 – Business Process Definition in IBM Process Designer