Delivering standards-based BPM and SOA solutions using IBM assets and tools

This article describes the first iteration of the Banking Process Models, now available in a BPMN 2.0-compliant format in both IBM® Business Process Manager V7.5 and Rational® Software Architect V8.0.3. You'll learn how to import the models into both tools and what extensions you can make to these analysis-level processes in each environment. You'll also find out about future strategic BPM and SOA objectives around using the models to accelerate the development of an Operational Process Model (OPM) to directly support the banking sector in terms of their implementation strategies. This content is part of the IBM Business Process Management Journal.

Brendan O'Sullivan (bosulliv@ie.ibm.com), Technical Sales Specialist, IBM Banking Industry Models, IBM China

Brendan O’Sullivan is a technical sales specialist for IBM's Banking Industry Models. In his current field practitioner role, he specializes in model-driven transformation projects. Previously, he worked in the development of both the industry models BPM and SOA offerings. Before joining IBM, Brendan worked for an international software development organization. In addition, he has achieved post-graduate degree qualifications in both business and IT.



Lakshmi Krishnamurthy (l.krishna@us.ibm.com), Senior Software Engineer, WebSphere Industry Content Packs, IBM

Lakshmi Krishnamurthy photoLakshmi Krishnamurthy is the Lead Architect for WebSphere Industry Content Packs at the IBM facility in Austin, Texas. He has more than 15 years of experience in designing and developing large-scale enterprise applications. His current activities include enhancing IBM product capabilities to support consumption of industry standards and IBM Industry Models.



Gary Johnston (gjohnsto@us.ibm.com), IBM Rational SOA Tools Architect, IBM China

Gary Johnston photoGary Johnston is a Senior Software Engineer and SOA Tools Architect in the Rational Software Architect development organization. For the past couple of years, Gary has been working to deliver and enhance support for SOA design and development in Rational Software Architect itself and to better integrate it with other SOA-related tools (both Rational and non-Rational).



Niall Jordan (niall.jordan@ie.ibm.com), Senior Software Engineer, IBM Banking Industry Models, IBM China

Niall Jordan photoNiall Jordan is a Senior Software Engineer and Business Analyst for the IBM Industry Models development organization. During his 3 years at IBM Niall has worked on both Industry Model Tooling and BPM Content teams, most recently developing tooling to create the Banking Industry Process Model in BPMN 2.0 format.



Mukesh Verma (mukesh.verma@in.ibm.com), Technical Lead, Banking Industry Pack, IBM China

Mukesh Verma photoMukesh Verma is a project manager in IBM Software Group. He has more than 10 years of industrial experience in designing, developing and managing medium to large scale JEE, SOA and BPM based enterprise solutions. His current activities include designing and developing BPM applications using IBM Industry Models with IBM BPM suite, and also managing IBM Business Process Manager automation.



Pat O'Sullivan (posulliv@ie.ibm.com), Senior Technical Staff Member, Industry Models Architecture, IBM China

Pat O'Sullivan photoPat O'Sullivan is currently the STSM responsible for the architectural evolution of the IBM Industry Models, specifically in relation to how the IBM Industry Models better integrate with the overall IBM tooling landscape. Pat has a long history in both Industry Models and Data Warehouse solutions. In previous roles, Pat has been a designer and a development manager for the IBM Industry Models.



Phil Coulthard (coulthar@ca.ibm.com), Chief Architect, BPM and SOA Tools, IBM China

Phil Coulthard photoPhil is currently the chief architect of tools for BPM and SOA at the IBM Toronto lab, as well as a member of the BPM and Decision Management CTO Office in IBM. Phil has been an architect within BPM and SOA for a number of years, and prior to that has a long history in development, architecture and leadership within IBM, including many years in tools and compilers within enterprise modernization. He is the co-author of two books about Java for RPG and COBOL programmers.



Daniel Leroux (dleroux@ca.ibm.com), IBM Distinguished Engineer, IBM Rational Asset, Architecture and Design Management, IBM China

Daniel Leroux photoDaniel Leroux is an IBM Distinguished Engineer and Senior Manager in the IBM Rational Asset and Design Management areas. Dan has been with IBM Rational for over 13 years and has held various development roles on Rational modeling tools such as Rational Rose Technical Developer (RoseRT), XDE and RSM/RSD/RSA (Rational Software Modeler, Systems Developer and Software Architect). Prior to this, Dan held roles at ObjecTime, working on real-time modeling tools and at Corel Corporation, working on various graphical tools. Over the last few years, Dan has been focused on leading the development and architecture of the new Jazz Design Management capabilities.



Claus Torp Jensen (ctjensen@us.ibm.com), Senior Technical Staff Member, IBM

Claus Jensen

Claus Torp Jensen is a Senior Technical Staff Member on the Business Process Optimization (BPO) Foundation team and Chief Architect for SOA-BPM-EA technical strategy, driving their alignment and integration both conceptually and practically. The BPO Foundation team has architectural responsibility for all of IBM's software products to ensure that they support the key principles of SOA, Business Process Management (BPM) and Business Agility from a client perspective. Prior to joining IBM in March 2008, Claus was Group Chief Architect, VP of Architecture and Business Development, in Danske Bank, a regional European bank. He was responsible for driving Danske Bank's SOA initiative and SOA center of excellence since its inception in 1999, and is known as an SOA expert and evangelist. Claus holds a PhD in Computer Science from Aarhus University, Denmark.


developerWorks Contributing author
        level

Chris Walk (chriswalk@us.ibm.com), Senior Product Manager, WebSphere Business Process and Decision Management, IBM China

Chris Walk hotoChris Walk is a Senior Product Manager on the IBM Business Process and Decision Management (BPM & DM) team. This team develops IBM software to help customers understand, automate, and optimize organizational business processes. Chris directs the evolution of the Process Center, a key component of IBM's BPM & DM platform that facilitates governance over changing business processes. He works directly with IBM customers across multiple industries, exploring business and technical challenges and guiding the development of IBM software products to address these needs. Chris joined IBM with the acquisition of Webify Solutions in 2006 and has over 10 years of experience in product management, development, professional services, development, and technical sales. He holds bachelor degrees in Management Information Systems and History from the University of Texas at Austin.



29 September 2011

Introduction

In an era of erratic and volatile economies, financial institutions need to work smarter to meet the challenges of a global marketplace. These institutions need to define structures that support agility and flexibility and that allow for ease of extension based on customer specifications, new products, and new regulatory requirements - and all in the context of increased cost and efficiency savings. Faced with these pressures, these institutions are being driven to re-think their business strategy and operational plans in a bid to maintain profitability.

IBM's vision for the achievement of these objectives is based on the adoption of a strategic approach that aligns both business and IT and that combines the benefits of business process management (BPM) and service-oriented architecture (SOA). Organizations re-thinking their strategic initiatives and formulating a convergence between IT solutions and business priorities will need to address architecture from both perspectives. This offers the possibility to exploit the enabling power of IT solutions in defining business strategies and provides a solid foundation that derives a clear BPM solution supported by a complementary SOA landscape. This also provides the opportunity for organizations to break from the traditional silo or line of business perspective and think more in terms of enterprise transformation that allows for improved portfolio and technology management with resultant cost and efficiency savings.

The adoption of a standards-based approach is essential to the successful delivery of a BPM and SOA strategy. The business and technical drivers are obvious for migrating to a common standard to support customers as they seek to cut through the proliferation of methodologies and tools they face. IBM provides a standardized solution accelerator with its Banking Industry Models that help customers in the adoption of their BPM and SOA strategies. These models provide "leading practice" intellectual property templates for data, business processes and services that are developed using an underlying common business language and that directly address and support the successful alignment of business and IT. Coupled with advances in BPM and SOA tooling as provided by WebSphere® and Rational®, IBM provides the fundamentals that can assist organizations looking to undertake a transformation strategy.

Any transformation strategy also needs to be aligned with industry standards. The IBM offerings are being coupled with standards, such as the Business Process Model and Notation (BPMN) standard from the Object Management Group (OMG). The most recent version of this standard is BPMN 2.0, which is a big step forward from the previous version. The primary goal of BPMN is to provide a notation that is readily understandable by all business users, from the business analysts that create the initial drafts of the processes, to the technical developers responsible for implementing the technology that will perform those processes, and finally, to the business people who will manage and monitor those processes. A secondary BPMN consideration is the creation of a file exchange format that allows for the migration of content across various tooling environments.

This article focuses primarily on the Banking Process Models strategy and discusses the Banking Process Models in V8.4, now available in a BPMN 2.0-compliant format for both IBM Business Process Manager and Rational Software Architect. It describes how to import these models into both tools and what extensions are possible to these analysis-level processes in those environments.


The IBM Banking Industry Models

The IBM Banking Industry Models provide comprehensive business and IT support in the form of intellectual property accelerators for a broad range of business areas across the banking sector as shown in Figure 1.

Figure 1. Industry models banking coverage
Industry models banking coverage

These models provide for the adoption and leveraging of the best practices and open standards advocated by IBM's vision of BPM and SOA. Figure 2 outlines the three main elements at the core of this approach, namely the Data, Process and Service Models, which are described in more detail in the following sections.

Figure 2. Industry models for banking
Industry Models for Banking

The Banking Process Model

The Banking Process Model is the primary model supporting BPM transformation strategies and complies with the BPMN 2.0 standard. The content is available in both Business Process Manager V7.5 and Rational Software Architect V8.0.3.

In general, a process model such as the IBM Banking Process Model can be used for two purposes:

  • As a starting point for process orchestration and implementation, or
  • As a set of requirements for services and software.

These two tasks are naturally performed by different roles using different tools, and often occur (partially) in parallel. It is not necessary to synchronize the process asset itself across these two different environments. However, it is important that the defined services in the service and software environment are coordinated with the automated (service) tasks that invoke them from the process orchestration and environment. That is, they are kept in sync as each goes through its own lifecycle.

The Banking Process Model provides pre-defined analysis-level processes, used to ensure consistency and reuse across the financial institution. In addition, it supports those organizations that want to optimize their process re-engineering or process improvement phase, thereby supporting operational efficiencies within their organization. The model is enterprise in nature and provides template solutions that accelerate the definition of the optimum set of business requirements using a standardized common business language. It also plays a critical role in the definition of a service-based architecture. It is only through analysis of the processes that support the operations of a financial institution that the service candidates that will best support those processes can be identified.

The primary benefit of the process model is to provide an agile and flexible model facilitating ease of extension on project engagements. The primary banking divisions supported are retail, corporate and private banking. There is also business coverage supporting the financial markets sector. There are 530 processes currently defined in the model. The primary areas of business coverage supported are as follows:

  • Sales & Relationship Management
  • Know Your Customer (KYC) / Account Opening
  • Lending
  • Card Products Administration
  • Commercial / Syndicated Lending
  • Mortgages
  • Trade Finance
  • Savings, Investments & Term Deposits
  • Payments
  • Cash Management
  • Transfer Services
  • Wealth Management
  • Product & Marketing Management
  • Regulatory & Compliance
  • Best Execution / Markets in Financial Instruments Directive (MiFID)
  • Trade Processing
  • Corporate Actions
  • Asset & Liability Management
  • Human Resource Administration

The key benefits to be derived from the Banking Process Model are as follows:

  • Proven "leading practice" content - validated by world leading financial services organizations over many years.
  • Accelerated development time - 40% reduction for new solutions is typical with requirements being defined in a more complete and accurate manner.
  • A rebuilt underlying vocabulary model facilitates consistent communication between business and IT.

The Banking Service Models

The Service Models support the translation of business requirements defined in the Banking Process Model into IT analysis and design representations using unified modeling language (UML) methods. In effect, the Service Models support the realization of an SOA strategy as the design-level model ultimately describes the services, interfaces and components that support the processes at run-time. These models provide the pre-defined structures to enable more consistency and reuse in the creation of services. Using these models, business concepts can be traced from analysis-level through design-level refinements to actual component and message definitions. The analysis-level representation of the Service Models is provided by the Financial Services Business Object Model (FS-BOM), which develops candidate services and class diagrams representing information inputs and outputs. The design-level representation is provided by the Financial Services Interface Design Model (FS-IDM), which takes the analysis-level concepts identified within FS-BOM and specifies an SOA that meets these requirements. The key benefits to be derived from the Service Models are:

  • Facilitates translation of business requirements into structured IT analysis and design specifications using predefined models with full traceability between BPM and SOA models.
  • Facilitates structured and consistent communication between business and IT communities through the use of the pre-built vocabulary model.
  • Provides an environment in which reuse possibilities can be identified and verified, and ultimately results in the development of technical services, interfaces and components in a formalized design model.

The Banking Data Model

The Financial Services Data Model (FSDM) is a foundation model for the development of the Banking Process Model and the Banking Service Models. It enables the business concepts, which make up a particular topic, to be clearly understood and communicated and is a key input to the underlining common business language used in the development of our BPM and SOA models. The FSDM is structured in a hierarchical, ‘top to bottom’ manner containing industry standard business definitions of data. The FSDM represents the business information requirements of a generic financial services organization, along with the necessary rules to assure information integrity. It is structured to be cross-enterprise in scope. The model provides a framework for the development of consistent cross-enterprise data structures which promote information sharing across business applications. The key benefits from using the FSDM are as follows:

  • Provides a structured starting point to integrate data across BPM and SOA, as well as providing the business terms, definitions and relationships for populating a business glossary.
  • Provides consistent and customizable data architecture and common definitions for improved accuracy and consistency of data, and reduced redundancy.
  • Facilitates the application development life cycle thereby reducing system and lost opportunity costs.

The IBM Banking Industry Models and IBM Business Process Manager V7.5

IBM Business Process Manager V7.5 is a comprehensive and consumable business process platform that provides total visibility and management of business processes and is specifically designed to make it easy for process owners and business users to engage directly in the improvement of their business processes. Its highly integrated functionality and fluid designs provide new levels of interoperability with other IBM offerings, and it scales smoothly and easily from initial project to enterprise-wide program.

This BPM platform is well-suited to both SOA and non-SOA environments, provides total visibility and management of your business applications, and includes tooling and runtime components to model, assemble, deliver and manage your business processes.

The first iteration of the Banking Process Models has been released in BPMN format. The Process Model is shipped as a zip file representation of a BPMN model, which is an amalgamation of individual BPMN files and is available for import into the IBM Process Center. Once imported, you can use IBM Process Designer to open the resulting process, view the details of the process and extend and customize the analysis-level representations.

Importing the Banking Process Models into Business Process Manager

To import the Process Model into Business Process Manager, do the following:

  1. Select Process App (on the Process App tab) to display the import dialog.
  2. Click Import Process App. The Import Process App dialog displays.
  3. Click Browse and select the BPMN 2.0 file BPMN84.zip, then click Next.
  4. In the Import Process App window, enter the name of your process application, for example, BPMN_84. A new process application is created, containing the BPMN content. A snapshot of the process application is automatically created in the Process Center, as shown in Figure 3.
    Figure 3. IBM Process Center
    IBM Process Center

Viewing Banking Process Models in Business Process Manager

To view the Banking Process Model, open IBM Process Designer. The 530 analysis-level business processes are available in alphabetical order under the Processes folder, as shown in Figure 4.

Figure 4. Process hierarchy
Process hierarchy

To review a given process and begin analyzing, select the process from the list. For example, Figure 5 shows the process Accept Transfer Instruction, in which you can see the BPMN representation of events, tasks, sequence flows, and so on. This provides the template solution that can accelerate the definition of the optimum business representation in customer workshops.

Figure 5. Sample business process in IBM Process Designer
Sample business process in IBM Process Designer

(See a larger version of Figure 5.)

To review a description of the process, select the Overview tab. As shown in Fiure 6, this tab outlines a detailed business definition of the functionality being provided by the process.

Figure 6. Sample process description
Sample process description

(See a larger version of Figure 6.)

To understand the context in which the sub-process Accept Transfer Instruction is being used, select the Where used tab, as shown in Figure 7. In this context, you can see that this sub-process is being re-used in two other processes. This is particularly relevant in demonstrating how reusability is facilitated using the models.

Figure 7. Sample reuse
Sample reuse

The atomic-level activities in the Banking Process Model are represented in alphabetical order under the Implementation folder, as shown in Figure 8. They are defined as Service Tasks to allow them to be reused across multiple processes. In effect, these correspond to global tasks.

Figure 8. Task hierarchy
Task hierarchy

As with processes, you can view descriptions of the atomic-level activities and determine where they are being re-used.

The following are the BPMN 2.0 elementsthat have been used in V8.4 of the Banking Process Models:

  • Private (internal) Processes are processes that are internal to a specific organization and have typically been called workflow or BPM processes and can be executable or non-executable.
  • A Sequence Flow is used to show the order in which a process's activities are executed.
  • A Lane represents a grouping of activities, usually to indicate that they are all performed by the same entity (for example, a person or IT system) or role.
  • A Call Activity represents an activity that will call a global sub-process or global task (explained later) or another process to do its job. This gives us the ability to reuse these tasks and processes in many contexts.
  • Events represent non-local flow of execution (that is, one which does not follow a Sequence Flow connection).
    • Start Events and End Events are used to indicate the beginning or end of a process, respectively.
  • A Gateway represents a point in a process at which the local flow of process execution can change. A gateway element can have multiple incoming or outgoing sequence flows.
    • A diverging Decision Gateway (or Exclusive Gateway) represents a decision point from which exactly one of its outgoing sequence flows will occur.
    • A converging Decision Gateway (or Exclusive Gateway) represents a merging of multiple alternative paths.
    • A Simple Split (or diverging Parallel Gateway) unconditionally results in the execution of all of its outgoing sequence flows.
    • A Simple Join (or converging Parallel Gateway) acts to synchronize parallel flow.
  • A Global Task represents an atomic (un-subdivided) unit of work. Global tasks are reusable in that they can be called from any number of processes (via call activities).

Figure 9 shows the palette of BPMN elements supported in Business Process Manager V7.5 that can be used to extend and customize the Process Model. There is currently no export capability from Business Process Manager that allows for the BPMN content to be migrated to other process modeling tools.

Figure 9. BPMN elements
BPMN elements

Working with Banking Process Models in Business Process Manager

The Banking Process Model provides comprehensive business support for a broad range of business areas across the banking and financial markets sectors. One area of considerable interest is lending and, more specifically, account opening. The business issues surrounding account opening continue to be a major cost item due to the multitude of systems and applications that need to be maintained. In many cases, these systems are specific to lines of business, which results in duplication of processing efforts and makes it difficult to achieve synergies and cost savings.

The Banking Process Models provide template solutions for account opening in the areas of consumer loans, commercial loans, mortgages, lines of credit and syndicated loans. These are the starting point for the definition of the optimum business representation that financial institutions want to achieve in the area of account opening. Financial institutions then appraise their own capabilities and identify elements that will result in driving effective, competitive differentiation, and extend and customize accordingly.

This article focuses on one small area of the account opening process that is relevant to the current economic climate. The sub-process Apply Product Policy involves the financial institution applying the policy guidelines for the particular type of product so as to assess their risk exposure and vulnerability and have systems in place to manage and mitigate such risks. The output of this sub-process partially informs whether the loan application will be provided.

The following sections outline some of the possible extensions that can be made to the analysis process model in Business Process Manager using Apply Product Policy, shown in Figure 10, as the example.

Figure 10. Apply Product Policy business process
Apply Product Policy business process

(See a larger version of Figure 10.)

Add a participant group

To add a new participant group, complete the following steps:

  1. Select Participant Group under the Process category, as shown in Figure 11.
    Figure 11. Create a new participant group
    Create a new participant group
  2. Click the new participant group in the diagram (named Untitled by default) and in the properties Name field, enter Customer Representative, as shown in Figure 12. Documentation can be added to support the definition of this new participant.
    Figure 12. Name the new participant group
    Name the new participant group
  3. Drag and drop the Customer Representative participant onto the process diagram and assign tasks as necessary, as shown in Figure 13.
    Figure 13. Add a participant group to the diagram
    Add a participant group to the diagram

    (See a larger version of Figure 13.)

Add or change business objects

Business objects provide a natural representation of the data required to facilitate process implementation and are defined as XML Schema definitions at design time, and at run-time as Java™ Business Objects.

To add a new business object, do the following:

  1. Select Business Object under the Data category.
    Figure 14. Create a new business object
    Create a new business object
  2. Click the new data object icon in the diagram (named Untitled by default) and in the properties Name field, shown in Figure 15, enter ArrangementDetails, which will represent the data that needs to be represented and validated in the process as part of the application for a loan.
    Figure 15. Name the new business object
    Name the new business object
  3. You can then associate individual attributes and their type definitions with the ArrangementDetails business object as shown in Figure 16.
    Figure 16. Create a new business object attribute
    Create a new business object attribute

    (See a larger version of Figure 16.)

    Examples of some attributes that can be defined in ArrangementDetails are customerID, firstName, middleName, surname and so on. All of these attributes should be specified with the appropriate data types defined.

  4. The first iteration of the Banking Process Models in Business Process Manager V7.5 does not have any predefined business objects and, therefore, these need to be created manually. We expect to make business objects available in subsequent iterations.

Add Coach flows to human task implementations

The Apply Product Policy sub-process is a mixture of manual and system integration tasks. Those tasks that are manual will need human task services to be created. A human task service is similar to a Process Server style human task in that they present work to people using a web-based task list, along with forms for displaying data and enabling user input. In BPM, Coaches are used to implement human tasks or activities and provide the interfaces for end-user interaction. Process Designer allows you to define the static elements so that you can visualize what data is needed in the run-time Coach, and where the data should be displayed in the layout. After you have designed the look and feel of the Coach, you need to feed real business data to the Coach controls for your process participants to interact with and to help them make the appropriate decisions. This requires creating bindings between the Coach controls and the data structures, or variables, that represent the business data.

To add a new human service, do the following:

  1. Select Human Service under the User Interface category, as shown in Figure 17.
    Figure 17. Create a new human service
    Create a new human service
  2. Click the new human service icon in the diagram (named Untitled by default) and in the properties Name field in the properties, enter Apply Documentation Standard, which will represent the human implementation for that task.
  3. You can align this human task with the sub-process Apply Product Policy and define the implementation, as shown in Figure 18. For example, the input parameter is defined to be the business object ArrangementDetails. The output parameters are a series of Boolean values corresponding to the validation of various documents that need to be checked as part of the application process.
    Figure 18. Create a new Coach
    Create a new Coach

    (See a larger version of Figure 18.)

  4. In the Coach tab, you can specify the documentation that needs to be reviewed and the associated Boolean values, as shown in Figure 19. For example, is the application form correctly completed? Has the applicant provided a completed salary certificate?
    Figure 19. Outline human tasks to be completed
    Outline human tasks to be completed

    (See a larger version of Figure 19.)

Add integration services for automated tasks

Activities that involve system interaction are implemented using integration services. For example, you may want to validate the credit rating of a customer prior to approving a loan. This may involve invoking a service call to a third party to request and retrieve the credit rating score. Integration services are the only services that can include web service integration and Java integration components as part of their implementation. To add a new integration service, do the following:

  1. Select Integration Service under the Implementation category, as shown in Figure 20.
    Figure 20. Create a new integration service
    Create a new integration service
    Advanced Integration Service represents services implemented using IBM Integration Designer. For a simple web service-based implementation it is recommended that you use the Integration Service option.
  2. Click the new advanced integration service icon in the diagram (named Untitled by default) and in the properties Name field, enter Apply Credit Rating Scale, which will represent the system implementation for that task, as shown in Figure 21.
    Figure 21. Name the new integration service
    Name the new integration service
  3. Define the input and output parameters to the service as shown in Figure 22. These parameters relate to the previously defined business objects that you have manually added to Business Process Manager.
    Figure 22. Create a new integration service implementation
    Create a new integration service implementation

    (See a larger version of Figure 22.)

  4. You can view the implementation in the diagram, as shown in Figure 23, by selecting the Properties section.
    Figure 23. View integration service in process diagram
    View integration service in process diagram

    (See a larger version of Figure 23.)

Adding reports and tracking groups

Reports help monitor a process over a period of time. IBM Process Designer provides ready-to-use tools to generate and view reports that, for example, monitor a business object state change (value change) and report on it accordingly.

In the Apply Product Policy example, you might need to monitor the ArrangementDetails business object over a given time period and report on state transitions. You can achieve this by doing the following:

  1. Adding a tracking group.
  2. Generating the report to view the captured information.

A tracking group acts like a bucket of information that needs to be captured when the process runs. To add a new tracking group, do the following:

  1. Select Tracking Group under the Performance category, as shown in Figure 24.
    Figure 24. Add a tracking group
    Add a tracking group
  2. In the New Tracking Group window, name the group AddProductPolicyTG, as shown in Figure 25.
    Figure 25. Name the new tracking group
    Name the new tracking group
  3. Define a tracked field along with its data type, as shown in Figure 26.
    Figure 26. Define a tracking field
    Define a tracking field

    (See a larger version of Figure 26.)

  4. Apply tracking events and provide an implementation to capture the tracking field from the tracking group at every state change location, as shown in Figure 27.
    Figure 27. Apply tracking events
    Apply tracking events

    (See a larger version of Figure 27.)

  5. Synchronize tracking information into the Performance Data Warehouse. With the Apply Product Policy process open, select Updating Tracking Definitions from the File menu and acknowledge the tracking definition update message, as shown in Figures 28 and 29.
    Figure 28. Select Update Tracking Definitions
    Select Update Tracking Definitions
    Figure 29. Update Tracking Definitions confirmation
    Update Tracking Definitions confirmation

Once the tracking groups and tracking events are defined, the next step is to generate or create a report, which will use the information captured in tracking groups and display it in a visual chart. To generate a report, do the following:

  1. Select Ad-Hoc Report Analysis from the File menu, as shown in Figure 30.
    Figure 30. Select Ad-Hoc Report Analysis
    Select Ad-Hoc Report Analysis
  2. Define the X-axis, Y-Axis, Chart Type and the Time Period Filter, as shown in Figure 31, then save the report for later viewing.
    Figure 31. Specify Ad-Hoc Report parameters
    Specify Ad-Hoc Report parameters

    (See a larger version of Figure 31.)

  3. Select Scoreboard under the Performance category.
  4. Specify the scoreboard name as ApplyProductPolicy, as shown in Figure 32.
    Figure 32. Specify a name for the scoreboard
    Specify a name for the scoreboard
  5. Enable the scoreboard, expose it to the required group, and add the report you created earlier to the scoreboard, as shown in Figure 33.
    Figure 33. Enable the scoreboard
    Enable the scoreboard

    (See a larger version of Figure 33.)

Testing the business process using playback

Once you have completed the design of the process and defined its reports and back-end service implementation, the next step is to run or play back the process to verify the business implementation and the reports. To do this, complete the following steps:

  1. Deploy all required back-end service implementations on the process server, and make sure they are in a running state.
  2. Configure the groups and users required for the process.
  3. Deploy the process snapshot version by doing the following:
    1. Log in as process administrator as follows: http://<server>:<port>/ProcessAdmin.
    2. Click Deployed Apps.
    3. Click All.
    4. Select the row for the correct process application and version, as shown in Figure 34, and click Activate Application.
      Figure 34. Select application to deploy
      Select application to deploy

      (See a larger version of Figure 34.)

  4. Open the ApplyProductPolicy in Process Designer.
  5. Click the Run Process button in the upper-right corner to play back the process, as shown in Figure 35.
    Figure 35. Run process
    Run process

    (See a larger version of Figure 35.)

  6. Answer Yes when prompted to shift to the Inspector view.
  7. All systems tasks in the Inspector view run, as shown in Figure 36. If any user tasks are there, you can select and run those tasks separately and define the user who'll be executing that user step. This step will open in a web browser.
    Figure 36. Inspector view
    Inspector view

    (See a larger version of Figure 36.)

    Once the user step is completed, the process proceeds.
  8. Once the process completes its execution, you can view the updated report in the process portal, as shown in Figure 37, at: http://<server>:<port>/portal
    Figure 37. View report
    View report

    (See a larger version of Figure 37.)


The IBM Banking Industry Models and Rational Software Architect

Rational Software Architect V8.0.3 provides the service-domain tooling that is the software product component of the solution. Rational Software Architect tooling includes the following:

  • Support for business process modeling, based on the current release of the BPMN 2.0 specification.
  • A SoaML UML profile and extended tooling that enables UML-based service modeling using SoaML stereotypes.
  • SoaML-based service model templates that regularize the structure of service models.

Rational Software Architect supports building business process models using the BPMN 2.0 notation. Figure 38 illustrates a simple business process diagram being edited in Rational Software Architect. The BPMN editor supports the common Eclipse graphical editing paradigm for drawing diagrams – a drawing editor supported by a drawing palette, with right-click menu items available to create additional in-context model elements. Process model elements appear in the Project Explorer view.

Figure 38. Sample business process in Rational Software Architect
Saple business process in Rational Software Architect

(See a larger version of Figure 38.)

Rational Software Architect's business process modeling capability is primarily targeted to support the needs of the IT solution architect to create (or import), view, and refine business processes, and to use those process models as input into service solution design and development. We do not envision that an organization would necessarily or typically use Rational Software Architect as an enterprise solution for business process modeling, management, and optimization.

Importing the IBM Banking Process Models into Rational Software Architect

IBM Banking Process Models V8.4 ships a zip file representation of a BPMN model (an amalgamation of BPMN files) that can be imported into Rational Software Architect V8.0.3 or later. To import these BPMN models, do the following:

  1. Extract the BPMN models from the zip file to a local directory.
  2. Select File => Import => BPMN 2.0 => BPMN 2.0 files, as as shown in Figure 39, then click Next.
    Figure 39. Import process models
    Import process models
  3. Select the BPMN folder you want to import, for example, BPMN84, as shown in Figure 40.
    Figure 40. Select a BPMN file to import
    Select a BPMN file to import
  4. Select the destination folder, as shown in Figure 41, and click Finish.
    Figure 41. Select a destination folder
    Select a destination folder
  5. The Banking Process Models are loaded into Rational Software Architect, as shown in Figure 42.
    Figure 42. The imported Banking Process Models
    The imported Banking Process Models

    (See a larger version of Figure 42.)

Note: The Banking Process Models in the original zip archive contain resource associations. However, Rational Software Architect V8.0.3 does not support the BPMN 2.0 resource association construct, so these are ignored on import. We expect this limitation to be removed in a future version.

Viewing Banking Process Models in Rational Software Architect

To view a process, open, for example, Financial Transaction Processing => Administer Outpayment, then Administer Outpayment. The process will open in the BPMN editor, as shown in Figure 43.

Figure 43. The Administer Outpayment process
The Administer Outpayment process

(See a larger version of Figure 43.)

At the bottom, the Properties view shows the properties of whatever you have selected in the editor or in the Project Explorer. Most types of elements have more properties than would comfortably fit in that space, so the Properties view provides tabs that allow you to view categorized subsets of properties. For example, to view the description of a selected process, select the Documentation tab in the Properties view, as shown in Figure 43.

At the right is the palette, as shown in Figure 44, which contains items that you can drag and drop into your process model to extend it.

Figure 44. The BPMN Editor palette
The BPMN Editor palette

The developerWorks article Design and develop a more effective SOA, Part 3: Describe business processes using Rational Software Architect and Business Process Modeling Notation includes a description of each of these elements and their intended uses. Refer to the list of supported BPMN elements from earlier in this article.

On the left, the Project Explorer gives you a hierarchical view into the Banking Industry Models folder structure, and also allows you to expand and drill down into business process models, so that you can see what elements they contain, as well as their properties, without having to open them in the graphical editor. Figure 45 shows an example.

Figure 45. RSA Project Explorer
RSA Project Explorer

You can add elements to process models by selecting an element in the Project Explorer and right-clicking to open a context menu. Figure 46 shows an example of how you could add a new global task to Banking Global Tasks.

Figure 46. Adding a global task
Adding a global task

Back in the editor itself, you will probably notice that some of the activity nodes contain a small plus sign (+). This indicates that these are call activities that call another process. See Administer Transfer Outpayment in the Administer Outpayment process in Figure 43 for an example. You can double-click on a call activity to open the called process in its own editor.

Using the Banking Process Models in Rational Software Architect

For V8.4 of the Banking Industry Models, we envision that the primary use of the Banking Process Models in Rational Software Architect will be for IT to better understand the business requirements they represent while doing more detailed service design, realization and implementation.

Typically, one would use a business process model like the Analysis Process Model as input to service solution design using an SOA development process, such as the Rational SOMA method. If you're using the Banking Industry Models, however, this has essentially already been done for you as embodied by the Interface Definition Model, for example. You can, of course, use the Interface Definition Model as a design for input into detailed service design and development.

Note that in V8.4 there is no linkage from the BPMN models to the downstream Service Models (Business Object Model and Interface Design Model) or vice versa. However, these linkages can be manually created by users of the models if required. It is an objective for subsequent releases to include these linkages.


Conclusion

IBM provides the combination of market-leading products, industry accelerators and best practices, to ensure success with BPM and SOA projects. All of the above can be leveraged by organizations to realize fast value, foster BPM and SOA adoption and create transformational impact. The approach advocated by IBM facilitates organizations to re-think their strategic initiatives and formulate a convergence between IT solutions and business priorities that addresses architecture from the perspectives of both BPM and SOA.

IBM continues to align with industry standards, such as the Business Process Model and Notation (BPMN) standard proposed by the Object Management Group (OMG). The first iteration of the IBM Banking Process Models in BPMN 2.0-compliant format, Version 8.4, is now available in both IBM Business Process Manager and Rational Software Architect. These models act as an accelerator in terms of deploying solutions in both the Business Process Manager and Rational Software Architect environments. For example, in Business Process Manager the IBM Banking Process Models can be customized into design-level artifacts, such as the addition of business objects, the addition of Coach flows to human implementation tasks, the addition of integration services for automated tasks, and the addition of reporting and tracking groups. Business Process Manager provides total visibility of the business process platform and is specifically designed to make it easy for business process owners and business users to engage directly in the improvement of their business processes. It includes tooling and run-time components to model, assemble, deliver and manage your business processes.

Similarly Rational Software Architect provides a BPMN representation of the Banking Process Models, which allows IT to better understand the business requirements they represent while doing more detailed service design realization and implementation based on the underlying Service Models.

Resources

Learn

Get products and technologies

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


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. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

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.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

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

 


All information submitted is secure.

Dig deeper into WebSphere on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere, Rational
ArticleID=762097
ArticleTitle=Delivering standards-based BPM and SOA solutions using IBM assets and tools
publish-date=09292011