With the more and more SOA solution developed and deployed, there has been an increase in requests requiring an automated and event-driven SOA Governance model and solution. Currently, IBM has developed a SOA Governance Methodology, the SOA Governance and Management Method (SGMM), and several SOA Governance-related products, such as WebSphere Service Registry and Repository (WSRR) and Rational Method Composer (RMC). However, in customer projects, there are still several questions:
- How to deal with governance process automatically based on governance events?
- Is there an industry-based governance solution?
To address these questions, we developed a SOA Governance solution based on the insurance industry. This solution includes IBM WebSphere Service Registry and Repository, and a newly adopted business event processing product, WebSphere Business Event (WBE). This article will introduce the details of this solution.
In some projects, customers need to monitor the service lifecycle and require a mechanism to trigger service lifecycle change based on events. These events can be either business events, like the new business strategy announcement, or the IT events, such as a lifecycle change of other dependent service. Figure 1 depicts the solution architecture.
Figure 1. Solution Architecture
WebSphere Service Registry and Repository
The WebSphere Service Registry and Repository (WSRR) is the master metadata repository for service descriptions. There are two concepts: Registry and Repository. Registry supports the publication of metadata while repository provides functions to store, manage the metadata. Besides the basic functions, WSRR also supports the Service Lifecycle management by providing the following capabilities:
- Model life cycle of service artifacts;
- Manage promotion of services through phases of their life cycle in various deployment environments;
- Perform impact analysis and communicate changes to the governed service metadata.
Business Model
In order to facilitate the representation and management of business, WSRR supports the business model configuration similar to the example below which is a representation of the types of entity that are of interest to business roles. Here, five basic business model concepts are defined: Business application, process, service, organization, and contract. The user can create and update business models based on Web Ontology Language (OWL) files.
- Business Application: Business application represents a high-level business applications that fulfill a direct business need. Applications provide a root for mapping the business applications to the IT implementations.
- Business Process: Processes represent common (shared by multiple applications) business processes. Processes have dependencies on other processes and services and are usually implemented by assembly of those dependant services through a tool such as WebSphere Integration Developer (WID) and realized through WebSphere Process Server (WPS).
- Business Service: Business services represent a common (shared) service at a business level. This is effectively the " cataloged " item in SOA. WSDL interfaces and endpoints would be referenced from here.
- Organization: An Organization represents an organizational unit at a business level - effectively a line of business. This high level representation is often needed in SOA to identify the provider or consumer of services and the prime " owner " in an organizational sense. An Organization can also be used to correspond to a UDDI " businessEntity " although synchronization of this with UDDI is not included in the governance profile.
- Contract: A Contract represents an agreement between two organizations regarding the services provided and the policies agreed between provider and consumer organization.
Technical Model
Besides the Business Model, WSRR also maintains a registry of services based on service definition expressed in the WSDL and XSD. For example, for one physical WSDL file, if it is loaded into WSRR, there are related WSRR metadata generated: WSDLDocument represents the document itself, correspondingly, the WSDLService, WSDLPort, WSDLBinding, WSDLPorttype are the logical objects parsed from this WSDLDocument. There is also a technical layer and both the physical objects and logical objects link to it, such as the Service, ServiceEndpoint, ServiceBinding, and ServiceInterface objects.
The business model and technical model are not separated completely. From the business model, the corresponding technical model could be directed, and vice versa.
Governance Lifecycle & Governance Policy
WSRR is one of the main products of SOA governance. WSRR is provided with a default lifecycle that is installed as part of the standard installation. A user can define the service lifecycle model, which can be developed using IBM WebSphere Integration Developer tooling and loaded into WSRR. The lifecycle phase, operational state, and service definition status are all used to offer a mechanism for use, reuse, visibility and operational readiness, and health.
WSRR provides the function to deal with governance policy. Here we take advantage of this feature to deal with the condition that a service transition is permitted to happen or not.
Figure 2 is an example of the full service lifecycle with control points and deliverables.
Figure 2. An Example of Full Service Lifecycle
In 2008, IBM announced WebSphere Business Event (WBE) which is designed for managing the business events flowing across systems and people with the goal of providing the ability to sense and respond to changing business conditions. It embraces an important concept of Business Event Processing (BEP) in its product design. It allows business users to describe, in business language, the business events and patterns to detect, evaluate, and react to in time to meet business objectives.
WBE is comprised of three seamlessly integrated elements: Design Environment, Run-time Environment and an Asset Repository. There are two design tools, one is for the IT developer, and the other is for the business person. IT developer identifies the touch points and connectors, and business objects which provide a metadata definition layer to permit data to move seamlessly between touch points, via the Design Data. And the business person specifies the Interaction Sets which determine how business systems interact with each other and one Interaction Set is consists of an Event, one or more Actions, and optionally Filters. Filters are optionally applied to determine whether an Action should be taken, and also can be used to examine a pattern of Events to determine whether the conditions exist for the current Event to be evaluated. In the below figure is the composed elements and their relationship.
Figure 3. WebSphere Business Event Elements and Relationship
WBE used in this solution is to receive the service governance events which are emitted in WSRR or other channels and deal with the events. Using pre-defined governance process pattern, WBE can help solve the problem of deciding and dynamically reacting to simple and complex relationships in SOA governance between people, process, and information.
An Event Handler in this solution is targeted to listen to and handle the service transition happened in the WSRR.
Here, a governance notification plug-in is defined, which is written as a Java Class that implements the
com.ibm.serviceregistry.governance.ServiceRegistryGovernanceNotifier2
interface. The ServiceRegistryGovernanceNotifier2 interface
extends the original ServiceRegistryGovernanceNotifier interface and provides additional functionality. Below is the class hierarchy.
From it, we can see that the ServiceRegistryGovernanceNotifier2 has further three
methods, makeGovernable(), removeGovernance() and
validate(), compared to ServiceRegistryGovernanceNotifier interface.
Once the service transition event is listened, the event handler transforms it into the WBE acceptable event format, and emits the event to WBE.
Figure 4. Event Handler Implementation
The technical features of this solution are specified as above. Here after, an industry example is used to highlight the use case. We will use the typical business of Property & Casualty (P & C) Underwriting in insurance industry.
Underwriting is to manage the activities necessary to support the appraisal of a risk on contracts (both new and in force) to determine acceptance, alteration or rejection of the proposed risk. So P&C Underwriting prepares recommendations for P&C insurance policy describing the acceptable warranty and conditions by the company, taking into account all risks and customer situation. And information is prepared in order to decide on acceptable warranty and conditions for the company. This will form the basis for negotiations with the customer and for recommending acceptance or rejection of the risk. Preparing this information will obviously include specifying preliminary Terms & Conditions, calculating alternative premiums, and assessing whether or not re-insurance may be required.
Business Model and Technical Model
The Business Model of it is showed in below figure.
Figure 5. P&C Business Model
The business management loads it into WSRR. Next, define and develop the corresponding technical models, such as the WSDL, XSD, and published those files into WSRR.
Also, the Service Management develops the Business Model Lifecycle and Technical Model Lifecycle to govern the process.
The below figures demonstrate the Business Model lifecycle and State & Transition:
Figure 6. P&C Business Model Lifecycle
Figure 7. Business State and Transition
Figures 8 and 9 below illustrates the Technical Model lifecycle and State & Transition.
Figure 8. P&C Technical Model Lifecycle
Figure 9. Technical State and Transition
In this example, since the P&C Underwriting business process are composed of several business services and IT services to be developed and matured, in WBE, an interaction set is defined based on:
Listing 1. Sample Interaction Set Definition
if Allof(P&CUnderwritingService.State = "Published") then P&CUnderwritingBusinessProcess.State = "Realized" |
When WBE detects any events which specify the state transition of the composed services emitted by Event Handler, there is no any action performed. When all of the composed service states are "Published", WBE takes an action which transits the P&C Underwriting business process state to be "Realized".
This article represents a new solution for SOA Governance, which integrates IBM WebSphere Service Registry and Repository, and newly adopted WebSphere Business Event (WBE) for governance handling. And this solution is based on insurance industry business, which can be reused in similar business scenarios.
Learn
- A brief SOA Governance introduction from Bobby Woolf' s
"Introduction to SOA Governance".
- Understand SOA Governance from the Redbook
"Case Study: SOA Governance Scenario".
-
SOA Governance and Service Lifecycle Management.
- Browse the
technology bookstore
for books on these and other technical topics.
Get products and technologies
- Get more information of WebSphere Business Event from the
IBM WebSphere Business Event Info center.
- Get more information of WebSphere Service Registry and Repository from the
IBM WebSphere Service Registry and Repository Wiki.
Xue Wang is a SOA architect of SOA Advanced Technology group in China. She has more than 8 years of IT experience in SOA product development, customer engagement, and application architecture design. Currently, she is mainly focused on the banking solution.
JingAn Ren is an architect of SOA Advanced Technology group in China. He has years of experience in e-business and SOA solution development, design and architecture in FSS mostly and now his latest focus is to build and reuse industrial solutions.

John Falkl is a Distinguished Engineer and Chief Architect in the IBM Software Group SOA Technical Strategy organization. He is currently leading the SWG Governance Incubation Project. John spent 12 years in IBM Global Services, where he led a number of high-impact projects, including the deployment of Lotus Notes internally within IBM; the development of a subscription-based Lotus Notes service offering; and most recently, the definition and development of an SOA management service offering for IGS. Besides John's academic credentials, he holds three industry certifications in IT technology. John has a significant background in enterprise architecture and development, as well as nine years in management. John has also participated on many IBM Academy of Technology studies and served as a core team member on several. You can reach John at jfalkl@us.ibm.com.
Bob is an Executive Architect with IBM in the SOA Advanced Technology group, performing worldwide consulting for IBM customers in the area of SOA Governance and SOA Architecture since May, 2006. He is a co-author of IBM's SGMM (SOA Governance & Management Method). He is a member of the industry TOGAF (The Open Group Architecture Framework) SOA Governance working group, has written two books on SOA: 'SOA Governance, Achieving and Sustaining Business and IT Agility', and 'Executing SOA, A Practical Guide for the Service Oriented Architect', and has two patents pending in the area of SOA Governance. Bob has over 20 years experience in the telecom industry at MCI and Verizon Business. He was the MCI chief architect, leading the enterprise architecture group and working across the entire order to cash suite of applications. He led the development of the SOA based single stack strategy to simplify the multiple network and applications silos. Bob has driven the strategy, planning, and execution of MCI's product development in the area of contact centers, IP/VPN, VOIP, IMS, and managed services. For OSS, he has led successful implementations to automate network provisioning, network restoration, and network management. Prior to joining MCI, Bob worked as a consultant for American Management Systems (AMS) and Ideation, Inc. He has MS and BS degrees in Computer Science from Purdue University and has been granted two patents in the area of telephony. He has spoken at various industry forums, written for The SOA Magazine and been quoted in CIO Insight, Telecommunications, Infoworld and Computerworld.
Comments (Undergoing maintenance)





