build and refine your enterprise architecture with soa

10
Build and refine your enterprise architecture with SOA Harnessing SOA benefits with a systematic, incremental approach Skill Level: Intermediate Tilak Mitra ([email protected]) Certified Senior Executive IT Architect IBM 16 Sep 2008 Enterprise architecture is older than SOA. Yet as SOA stabilizes and matures into a mainstream discipline, you can reap benefits by adopting SOA at the enterprise level. In this article, explore how you can leverage SOA to develop and mature your organization's enterprise architecture. Introduction Service-Oriented Architecture (SOA) has been around a long time. But before adopting SOA corporatewide, organizations justifiably want to be able to see the benefits of it. Many organizations and consulting firms have taken a variety of approaches when trying to demonstrate the value of SOA. Some of these approaches are to: Focus solely on technology—with tools, products, middleware, and infrastructure forming the SOA. Take a process-centric approach by adopting a methodology to analyze, identify, specify, and realize services that adhere to the principles, best practices, and guidelines of SOA. Build and refine your enterprise architecture with SOA © Copyright IBM Corporation 1994, 2008. All rights reserved. Page 1 of 10

Upload: aamir97

Post on 20-Aug-2015

632 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Build and refine your enterprise architecture with SOA

Build and refine your enterprise architecture withSOAHarnessing SOA benefits with a systematic, incrementalapproach

Skill Level: Intermediate

Tilak Mitra ([email protected])Certified Senior Executive IT ArchitectIBM

16 Sep 2008

Enterprise architecture is older than SOA. Yet as SOA stabilizes and matures into amainstream discipline, you can reap benefits by adopting SOA at the enterprise level.In this article, explore how you can leverage SOA to develop and mature yourorganization's enterprise architecture.

Introduction

Service-Oriented Architecture (SOA) has been around a long time. But beforeadopting SOA corporatewide, organizations justifiably want to be able to see thebenefits of it. Many organizations and consulting firms have taken a variety ofapproaches when trying to demonstrate the value of SOA. Some of theseapproaches are to:

• Focus solely on technology—with tools, products, middleware, andinfrastructure forming the SOA.

• Take a process-centric approach by adopting a methodology to analyze,identify, specify, and realize services that adhere to the principles, bestpractices, and guidelines of SOA.

Build and refine your enterprise architecture with SOA© Copyright IBM Corporation 1994, 2008. All rights reserved. Page 1 of 10

Page 2: Build and refine your enterprise architecture with SOA

• Look at it from a business strategy perspective by aligning IT initiativesand funding based on business goals and imperatives.

• Take it a notch higher by developing and offering industry solutions thatsolve specific business problems with a combination of service-orientedtechnology frameworks, assets, tools, methodologies, domain knowledge,industry standards, products, and infrastructure capabilities all baked intoan out-of-the-box solution.

Let's take a step back from this jumble of approaches, and try to analyze what isrequired for an overall framework that harnesses the corporatewide benefits of SOA.Enterprise architecture can fit that bill.

In this article, learn how you can leverage SOA to systematically develop anorganization's enterprise architecture and realize the benefits of SOA. An SOAgovernance framework is mandatory to help the enterprise adopt SOA at the rightlevel—and in a capacity that is commensurate with the requirements of eacharchitectural facet of enterprise architecture.

Though this article is not about SOA governance, it provides key pointers on theresponsibilities of the SOA governance framework to help leverage SOA at thedifferent levels of enterprise architecture.

SOA maturity and enterprise architecture

Assume you're taking a services approach to SOA, and you have the best method,tools, techniques, and frameworks to influence your clients. It's a futile endeavorunless they see tangible and measurable benefits that directly help them maturetheir own enterprises in terms of business and IT. A major goal of SOA governanceis to help an enterprise systematically and incrementally mature in its vision ofcompanywide SOA adoption.

SOA is as much a business imperative as it is an IT imperative. An enterprise thatseriously wants to adopt SOA should think about developing its own enterprisearchitecture. Moving up the SOA maturity ladder is best demonstrated through thedevelopment of the corporate enterprise architecture that uses SOA in variousdisciplines (architecture, organization, methods, and tools). Enterprise architectures,along with organizational adaptability and change, are among he most importantmaturity indicators for SOA. Good results for the maturity indicators reflect asuccessful rendition of the SOA governance capabilities.

SOA maturity is firmly rooted in the organizational culture of the enterprise and howit fosters the adoption of SOA. Associated with the organizational culture is a

developerWorks® ibm.com/developerWorks

Build and refine your enterprise architecture with SOAPage 2 of 10 © Copyright IBM Corporation 1994, 2008. All rights reserved.

Page 3: Build and refine your enterprise architecture with SOA

corporate lingo—an unambiguous language to represent business and ITcapabilities using a service nomenclature. Using a common modus forbusiness-to-IT communication helps both domains think about software services asfirst-class enterprise assets. The service assets have a meta-model with embeddedattributes surrounding SOA maturity. Examples of these attributes are:

• Standards adoption or incorporation

• Regulatory compliance

• Service modeling and design technique adoption

Meta attributes such as these ought to be defined by the governance council.Attaining higher quality results for the attributes is an incremental but steady steptoward the top of the SOA maturity ladder.

Overview of enterprise architecture

Enterprise architecture is described differently by various consortiums, such asTOGAF, and vendors such as IBM®, BEA, and so on. A careful analysis of thewell-known definitions lets us derive a very simple view of enterprise architecture.Enterprise architecture comprises four main foundations: business architecture,application architecture, information architecture, and technology architecture. Eacharchitecture is a full-blown discipline in its own right, but enterprise architectureunites the four domains under a single unified enterprise view. Figure 1 shows asimple view of enterprise architecture.

Figure 1. High-level view of enterprise architecture constructs

ibm.com/developerWorks developerWorks®

Build and refine your enterprise architecture with SOA© Copyright IBM Corporation 1994, 2008. All rights reserved. Page 3 of 10

Page 4: Build and refine your enterprise architecture with SOA

Business architecture

Companies that prefer a top-down approach to service orientation should ideallystart by defining a studied business architecture. While typical enterprises considertheir "as-is" business processes to be their entire business architecture, thegovernance board should ensure that the business stakeholders acknowledge thattheir business architecture has both a static and a dynamic model. The dynamicmodel is minimally represented by documented "as-is" business processes andideally by "to-be" business processes. The static model however, is something thatneeds more work. The SOA governance council recommends that the entirebusiness landscape be deconstructed into a set of business components.

Business components are discrete and nonoverlapping, with each componentencapsulating a set of business functions. The business functions are exposed as aset of business services. In order for the business component to support its businessfunction, it may also need to consume a set of business services that are exposedby some other collaborating business component. Hence, a business component isdocumented to support a set of business functions that it realizes through a set ofexposed and consumed business services. A set of business components may becategorized as a business competency. Think of a business competency as ahigh-level business domain (for example, primary distributions or retail operations).Each business component is more of a functional area inside a business domain.Such a componentized view of the business lets stakeholders visualize and interprettheir business as a network of collaborating business components.

developerWorks® ibm.com/developerWorks

Build and refine your enterprise architecture with SOAPage 4 of 10 © Copyright IBM Corporation 1994, 2008. All rights reserved.

Page 5: Build and refine your enterprise architecture with SOA

The static business architecture is represented by a set of business components thatare categorized by business competencies. The SOA governance council must:

• Foster an iterative mode for development of such business architecturesfor the enterprise.

• Develop criteria to help measure the incremental realization of thearchitecture goals.

The governance council must analyze the business architecture artifacts and outputsto identify areas where IT investments are important for business transformationinitiatives. A well-planned business architecture provides a perfect platform todevelop business metrics to measure the effectiveness and value of the businessservices. The business-to-IT alignment ensures that the enterprise is marchingtoward increased maturity levels in its SOA.

IBM's component business model (CBM) technique provides guidance on how todevelop your corporate business architecture (see Resources).

Information architecture

Many organizations want to offer an aggregated, one-stop shop to their customers.But this can be a challenge with unstructured growth of corporate information anddata. Typically, growth of an IT department over decades is not well planned orcoordinated for a consolidated, single source of information and data. Customer datais a common example. Consider the sales representatives complaining about notbeing able to offer life insurance to a client who is trying to buy home or autoinsurance. The customer profile information is different, and not synchronized,between the two systems of record. Federated information and data can benefit fromSOA by having business-aligned critical information exposed as a set of informationservices.

SOA introduces a set of information service patterns that can be used to cleanse,aggregate, and consolidate data, which can then be exposed as a service forapplications to consume. Exposing critical business information lets you associate apremium value to your information; you can remove the need to weed throughvarious information sources to get relevant information.

Governance is a key underpinning to the SOA life cycle. Patterns enhance thegovernance process by reinforcing common practices with predictable outcomes.When you're developing systems, reusing proven flexible patterns can ensureconsistency and quality and reduce maintenance costs by having just a singlesource to update with changes.

Application architecture

An application architecture provides the perfect platform to leverage SOA principleswhen the fundamental building blocks of the technology and information architecture

ibm.com/developerWorks developerWorks®

Build and refine your enterprise architecture with SOA© Copyright IBM Corporation 1994, 2008. All rights reserved. Page 5 of 10

Page 6: Build and refine your enterprise architecture with SOA

are exposed as a set of services. It allows you to develop and modularize newapplications. You can also deconstruct and modularize existing applications, thenreconstruct them as a set of services. Their interdependence on the underlyinginformation and technology layers can be represented as a set of collaborating andcomposable services.

Application architecture can go through various phases of SOA maturity. It usuallystarts by identifying a set of atomic services, some of which may initially tend to bevery IT-focused. (An atomic services is an IT service that encapsulates a repeatableIT function and satisfies the criteria to be exposed as a service.) Atomic services aretypically moved into higher order composite services. Compositions of atomicservices, in the context of a specific business problem, are then identified as a unitof invocation (because they provide higher order business value than what'sprovided by exposing just the individual atomic services).

The genesis of the composite business application can be tracedback to Gartner's definition of a service-oriented businessapplication (SOBA). A composite business application solves aparticular type, or set, of business problems in a particular domainin a particular industry.

A cohesive collection of composite and atomic services packaged together may beoffered to clients as a ready-made solution. With enough capabilities, you canconfigure the collection to suit the client's requirements. Such a packaged solution isa composite business service, or composite business application.

Organizations that are higher up on the SOA maturity ladder are using their SOAgovernance processes and framework to execute SOA principles, guidelines, andbest practices for service-oriented analysis, design, and modeling. Service-OrientedModeling and Architecture (SOMA) is a proven method for such initiatives. SOMAhelps an organization develop business-aligned IT services, both functional andtechnical in nature, that form the basis of an enterprise's application and integrationarchitecture. Such organizations can advance from identifying and building atomicservices to composite services, and then on to building composite applications. Thistype of maturity road map, which is by no means a trivial achievement, needs to becarefully planned and monitored. The SOA governance processes enable suchorganic growth.

Technology architecture

Most enterprises typically start their SOA journey from the foothills of the technologyarchitecture. The technology architecture provides the infrastructure capabilitiesrequired to support an SOA:

• SOA products for the run time management and monitoring of servicesand business processes

• Technology adapters to heterogeneous packaged applications (such asSAP, Siebel, or other software vendors), file systems, databases, and

developerWorks® ibm.com/developerWorks

Build and refine your enterprise architecture with SOAPage 6 of 10 © Copyright IBM Corporation 1994, 2008. All rights reserved.

Page 7: Build and refine your enterprise architecture with SOA

real-time data systems

• Registry and repository products for provisioning and versioning theenterprise services

• Dashboards to provide a personalized view of the SOA metrics for boththe business and IT professionals in the enterprise

• An enterprise service bus (ESB) to perform the message transformation,information mediation, and service-routing requirements to orchestrateservices and realize end-to-end business processes

• Security-related infrastructure products to help externalize security relatedinformation from the services and to provide a seamless propagation ofsecurity credentials across heterogeneous system boundaries (forexample, a Web container, application server container, legacy systemssuch as CICS®, and so on)

Technology architecture provides the SOA infrastructure framework that is requiredto develop the enterprise services. Technology architecture modernization may be areasonable starting point, albeit arguable. The SOA governance council mustformulate a plan for acquiring the right tools and products to meet the requirementsfor the enterprise.

For example, the governance board might mandate the procurement of only thoseproducts that help in the service modeling and design. Then, when the companymoves into the subsequent phases of the SOA life cycle implementation, the boardcommissions an incremental purchase of products required for the next phases.Empowering the governance council to make such decisions ensures that thecompany is not spending their IT budget on areas that are not required in a giventime line. They channel the investment where it is required to provide more tangiblebenefits from SOA.

Conclusion

Enterprise architecture provides the four pillars of architectural capabilities:business, application, information, and technology architecture. By systemicallydeveloping the enterprise architecture, an organization benefits from incrementallymaturing their IT architecture and business architecture. Adopting SOA provides aset of best practices, guidelines, and capabilities that help an organization:

• Develop the key alignment between the business and IT.

• Develop a service-based application, information, and technologyarchitecture.

• Develop a business architecture using SOA principles.

ibm.com/developerWorks developerWorks®

Build and refine your enterprise architecture with SOA© Copyright IBM Corporation 1994, 2008. All rights reserved. Page 7 of 10

Page 8: Build and refine your enterprise architecture with SOA

Each pillar of enterprise architecture thus benefits from an enterprise SOA adoption.

Adopting SOA at the enterprise level is not a trivial task. It requires an overallprocess that provides a decision-making and management framework to foster thedesired behavior in both IT and business. The SOA governance framework fits thatbill: It organizes, coordinates, and harmonizes the set of activities across eacharchitecture pillar to grow the enterprise architecture by making the most of SOA.

developerWorks® ibm.com/developerWorks

Build and refine your enterprise architecture with SOAPage 8 of 10 © Copyright IBM Corporation 1994, 2008. All rights reserved.

Page 9: Build and refine your enterprise architecture with SOA

Resources

Learn

• Learn more about SOA in Executing SOA: A Practical Guide for theService-Oriented Architect, a recently published developerWorks series bookthat Tilak coauthored. Use coupon code IBM3748 for a 35 percent discount.This book has a detailed chapter on the IBM SOMA method.

• "A case for SOA governance" (developerWorks, Aug 2005) discusses theimportance of a governance body.

• Learn how to "Increase flexibility with the Service Integration Maturity Model(SIMM)" (developerWorks, Sep 2005).

• Read "The Architecture of Business" for a good overview of IBM's technique todevelop business architectures.

• "Service-oriented modeling and architecture" (developerWorks, Nov 2004)provides an overview of IBM's SOMA method.

• Read about information service patterns the three-part series "Informationservice patterns" (developerWorks. Jul 2006).

• In the Architecture area on developerWorks, get the resources you need toadvance your skills in the architecture arena.

• Find out more about SOA at Tilak's blog.

• Read other articles by Tilak Mitra.

• Browse the technology bookstore for books on these and other technical topics.

Get products and technologies

• Download IBM product evaluation versions and get your hands on applicationdevelopment tools and middleware products from IBM® DB2®, Lotus®,Rational®, Tivoli®, and WebSphere®.

Discuss

• Check out developerWorks blogs and get involved in the developerWorkscommunity.

About the author

Tilak MitraTilak Mitra is a Senior Certified Executive IT Architect in IBM. He specializes inSOAs, helping IBM in its business strategy and direction in SOA. He also works as

ibm.com/developerWorks developerWorks®

Build and refine your enterprise architecture with SOA© Copyright IBM Corporation 1994, 2008. All rights reserved. Page 9 of 10

Page 10: Build and refine your enterprise architecture with SOA

an SOA subject matter expert, helping clients in their SOA-based businesstransformation, with a focus on complex and large-scale enterprise architectures. Hiscurrent focus is on building reusable assets around Composite Business Services(CBS) that has the ability to run on multiple platforms like the SOA stacks for IBM,SAP and so on. Tilak recently coauthored a developerWorks series book: ExecutingSOA: A Practical Guide for the Service-Oriented Architect, available in the resourcessection. He lives in sunny South Florida and, while not at work, is engrossed in thegames of cricket and table tennis. Tilak did his Bachelors in Physics from PresidencyCollege, Calcutta, India, and has an Integrated Bachelors and Masters in EE fromIndian Institute of Science, Bangalore, India.

Trademarks

IBM, the IBM logo, ibm.com, CICS, DB2, developerWorks, Lotus, Rational, Tivoli,and WebSphere are trademarks or registered trademarks of International BusinessMachines Corporation in the United States, other countries, or both. These and otherIBM trademarked terms are marked on their first occurrence in this information withthe appropriate symbol (® or ™), indicating US registered or common lawtrademarks owned by IBM at the time this information was published. Suchtrademarks may also be registered or common law trademarks in other countries. Acurrent list of IBM trademarks is available on the Web athttp://www.ibm.com/legal/copytrade.shtml.

developerWorks® ibm.com/developerWorks

Build and refine your enterprise architecture with SOAPage 10 of 10 © Copyright IBM Corporation 1994, 2008. All rights reserved.