IBM WebSphere Developer Technical Journal: Developing adaptive composite business services using WebSphere Business Services Fabric, Part
04 Apr 2007
This series of articles discusses the end-to-end process of creating composite business services with IBM® WebSphere® Business Services Fabric Version 6.0. Part 1 introduces the idea of composite business services, and how WebSphere Business Services Fabric supports the development of these services.
From the IBM WebSphere Developer Technical Journal.
With Service-Oriented Architecture (SOA), a business can be visualized as a collection of loosely coupled reusable building blocks, called business services. A business service, which can be derived from freestanding components, derived from disparate legacy IT assets (such as legacy systems, packaged applications, custom applications, and so on), or provided by a third-party, provides a discrete business function (for example, check credit, open account, and so on) whose behavior can be adapted at run time based on the business context.
A composite business service (CBS) is a collection of business services that work together, along with a client’s existing applications, to provide a specific business solution. An enterprise can flexibly wire composite business services, user interfaces, and data services in innovative ways to create new composite business applications (aka service-oriented business applications, coined by Gartner, Inc.) to support business needs.
Figure 1 shows the conceptual layers of an SOA-based solution. At the bottom are existing enterprise and third party systems exposed as Web services: service interfaces defined using WSDL and messages encapsulated as SOAP documents. These IT services are then assembled into business services to automate or support a specific business function. A set of business services combined together represent a business solution: a CBS. At the top of the layer are the subscribers that consume the CBS, and who can be internal or external to the enterprise.
WebSphere Business Services Fabric is the platform to model, assemble, deploy, manage, and govern business services, and is packaged as follows:
The Tool Pack includes:
The Foundation Pack is built on top of WebSphere Process Server (which is included) and provides the integrated run time and management-time environment for business services. The Foundation Pack is made up of five modules:
Enforce consistency and coherency of business service model within the Business Services Repository.
Govern the changes to business service model in the Business Services Repository.
Migrate business service models between instances of the Business Services Repository.
Industry Content Packs (Optional)
WebSphere Business Services Fabric provides optional Industry Content Packs that include industry-specific extensions and pre-built industry-common services to reduce your effort in creating industry-specific SOA solutions. Currently, two Industry Content Packs are available:
IBM Insurance Property and Casualty Pack
IBM Healthcare Payer Pack
How do the components above work together to support adaptive composite business services? Figure 2 shows the steps for creating composite business services using these components and related IBM products.
Let's walk through the steps:
Use WebSphere Business Modeler to enumerate the roles, activities, high-level input/output, decision flow, and business measures that satisfy your requirements.
Analyze the requirements and business process models to create a conceptual design for the solution, including service interface design in IBM Rational® Software Architect, and logical data model in IBM Rational Data Architect.
If an applicable industry model is available, you should try to leverage it to facilitate the tasks described above. For example, IBM Information FrameWork provides a banking industry model which comprehends banking data and process definitions. Building with the available industry model eliminates the effort of rebuilding the cornerstone.
Define WebSphere Business Services Fabric extensions (ontologies) based on the requirements, business process model, and industry model (if any). WebSphere Business Services Fabric extensions are then deployed into the Business Services Repository.
Develop executable business processes, service components, and modules using the business integration, Java™ EE, and Web service tooling in WebSphere Integration Developer. Optionally, some of these components can be developed using IBM Rational Application Developer.
Use Composition Studio to define the business service meta data and submit it to the Business Services Governance Manager for approval.
Business service meta-data definitions will be reviewed by stakeholders in Business Services Governance Manager and published to the Business Services Repository.Define subscribers' entitlement to the created business services in Business Services Subscriber Manager. The entitlement information is stored in the Business Services Repository.</li><li>
Deploy the service components and executable processes into WebSphere Process Server.
WebSphere Process Server executes the business processes with the optimal services instances selected by Business Services Dynamic Assembler, based on the business context and meta data in the Business Services Repository.
The execution record is sent to the Business Services Performance Manager for capturing and future analysis.
Part 1 of this series provided some background and a brief overview of what IBM WebSphere Business Service Fabric is, what composite business services are, and what their development lifecycle looks like. In next installment, we will depict a business case, then perform the analysis to define the business services and associated service meta data Subsequent installments of this series will offer detailed steps to guide you through the creation of your first adaptive composite business service using the WebSphere Business Service Fabric platform.
09 May 2007
With a conceptual understanding of composite business services from Part 1, this article looks at a sample business case to illustrate how IBM® WebSphere® Business Services Fabric supports the development of these services and how it can help resolve business problems.
This series of articles discusses the end-to-end process of creating composite business services with IBM WebSphere Business Services Fabric Version 6.0. Part 1 introduced the idea of composite business services, and how WebSphere Business Services Fabric supports the development of these services. In preparation for performing indepth composite business service development, this article begins with a review of a business case, explains how WebSphere Business Services Fabric can help resolve the proposed business problems, and illustrates the resulting analysis and design steps.
Case Study: Bank loan application
Our example involves the fictional International Bank (INT Bank), which is undertaking a modernization effort of their loan application service through a services-oriented approach.
INT Bank is the parent company of International Bank of Texas (INT-TX) and International Bank of California (INT-CA). The major business of INT Bank is in providing loan services. To achieve a better understanding of their customers, and to be able to provide valuable loan products for their customers, the roles of loan officer and loan reviewer require different quality levels of customer credit information:
In addition to the systems mentioned above, three other INT Bank internal systems are also involved in the loan application process:Enterprise Customer Management database: Manages prospect and basic customer information. Loan Product database: Holds loan product information.
LDAP-based single sign-on facility: Provides user authentication.
Finally, INT Bank has a core IT staff at corporate headquarters who are responsible for administering the loan application service. INT Bank wants this staff to have capabilities to troubleshoot problems, monitor system performance indicators, and possibly extract a variety of business metrics, as the business dictates.
Before analyzing the requirements, let's look at the WebSphere Business Services Fabric features that can be used in this case.
Policies define the business requirements that must be met when a consumer requests a service. A policy consists of three parts:Context of service request
Content, which is the request itself
Contract, which are the requirements to be met.
For example, INT-CA (context) would like to use Credit Digger (contract) for customers whose wallet share and loan size meet certain criteria (content).
In WebSphere Business Services Fabric, a service's capability is described by assertions. You can define service capabilities along five dimensions:Performance
You can extend the industry ontology to add assertions for describing the service capabilities that are custom to your enterprise IT environment.
Dynamic business services assembly
At run time, the Business Services Dynamic Assembler determines the set of policies that are relevant to the service request, and then selects the best service provider (endpoints) that meets these requirements.
In the beginning, a design worksheet is used to analyze the business requirements behind the scenes in an organized way. Based on the functions provided by WebSphere Business Services Fabric, the business context can be analyzed according to these categories:
Multi-mode of access
What are the channels through which users can access the system? A composite business service (CBS) can provide the ability to provision a business process across multiple modes of access without resorting to duplication of applications, or requiring infrastructure or technical support, thereby providing complete interoperability among the different access modes.
A CBS offers the ability to represent different entities (organizations, sub-organizations, and roles) in the domain ecosystem so that it can provide personalized services for a subscribing entity through a provisioning process.
What are the existing IT assets in the system? A CBS can interoperate with source services from disparate assets in the domain ecosystem, including legacy assets, third party outsourced assets, and new in-house assets.
Policies and assertions
Design of a CBS will involve defining the Service Level Agreements (SLAs) associated with different entities, and services as policies based on context, content, and contract. In addition, domain-specific extensions might also be required if base CBS models do not adequately address the business requirements.
Listing 1 shows the results of the business requirement analysis in the form of a design worksheet.
Listing 1. Design worksheet and analysis results for INT Bank
Figure 1 shows the interactions between channels, processes, and services. The loan officer and loan reviewer access the Loan Application Management portal and Loan Risk Evaluation portal through the Web channel. The loan business process runs on WebSphere Process Server. The Business Service Dynamic Assembler routes the request from the business process to the proper service according to the policies and assertions defined by INTBank. Per the business case, there are two endpoints for the Customer Credit Service, one provided by CCIS, the other provided by Credit Digger.
This article provided an example of how to analyze the business case and produce a design worksheet. In the next installment, you will use this worksheet to develop ontology extensions, a composite business service model, and to simulate the policy-based endpoints selection with Composition Studio.