Skip to main content

An Event-based SOA Governance Solution

Xue Wang (xuewang@cn.ibm.com), SOA Architect, IBM
Xue Wang
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 (renja@cn.ibm.com), SOA Architect, IBM
JingAn Ren
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 (jfalkl@us.ibm.com), Distinguished Engineer and Chief Architect, IBM
Falkl
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.
Robert Laird (rglaird@us.ibm.com), Executive Architect, IBM
Robert Laird
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.

Summary:  With more SOA solutions deployed, there has been an increase in requests for an automated and event-driven SOA Governance solution. This article introduces the solution for handling the governance process automatically based on a governance event.

Date:  30 Jul 2009
Level:  Intermediate PDF:  A4 and Letter (701KB | 13 pages)Get Adobe® Reader®
Activity:  2259 views

Introduction

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.


Solution architecture

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
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.

  1. 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.
  2. 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).
  3. 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.
  4. 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.
  5. 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
An Example of Full Service Lifecycle

WebSphere Business Event

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
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.

Event Handler

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
Event Handler Implementation

Insurance P&C Underwriting

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.

P&C Underwriting Business

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
P and 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
P and C Business Model Lifecycle

Figure 7. Business State and Transition
Business State and Transition

Figures 8 and 9 below illustrates the Technical Model lifecycle and State & Transition.


Figure 8. P&C Technical Model Lifecycle
P and C Technical Model Lifecycle

Figure 9. Technical State and Transition
Technical State and Transition

Event Interaction Set

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".


Conclusion

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.


Resources

Learn

Get products and technologies

About the authors

Xue Wang

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

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.

Falkl

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.

Robert Laird

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)



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=SOA and Web services
ArticleID=417198
ArticleTitle=An Event-based SOA Governance Solution
publish-date=07302009
author1-email=xuewang@cn.ibm.com
author1-email-cc=
author2-email=renja@cn.ibm.com
author2-email-cc=
author3-email=jfalkl@us.ibm.com
author3-email-cc=
author4-email=rglaird@us.ibm.com
author4-email-cc=

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