17
Southwest System Integration Inc. © 2009 Proprietary and Confidential. Architecting and Building SOA solutions Derek Walker Southwest System Integration, Inc.

Southwest System Integration Inc. © 2009 Proprietary and Confidential. Architecting and Building SOA solutions Derek Walker Southwest System Integration,

Embed Size (px)

Citation preview

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

Architecting and Building SOA solutions

Derek Walker

Southwest System Integration, Inc.

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

Agenda• Introduction

• The Problem Space

• The Evolution of Services

• The Evolution of System Integration

• SOA Principles

• SOA – a definition

• The Players - SOA Stacks

• Case Study

• The Truth – Hype Displaced

• The Future

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

Introduction• Southwest System Integration. Inc. is a boutique consulting firm

providing the following services:– SOA Architecture and System Integration specializing in SWIFT and Healthcare– Software Project and Program Management– Sun Java CAPS Architecture and Implementation– SWIFT Integrator Architecture and Implementation– SDLC Implementation and Collaboration Software– Commercial Software Product Development and Management– Custom Software / Application Design and Development– Technology Evaluation and Assessment

• Notable Clients:– SWIFT - WorldBank– Sun Microsystems - BC Ministry of Health, Electronic Health Record– Geisinger Medical System– University of Medical and Dental of New Jersey

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Problem Space

• The computerization of organizations has created “silo’s of information”, compartmentalized along business functional areas– All with their own interfaces, protocols, data models, data formats

• The “increasingly-connected” world means that:– organizations need to interact with outside organizations to survive, e.g. JIT inventory,

outsourcing functions like HR, trading partners– organizations need to provide services that are coordinated responses of many

departments, i.e. “business process mash-ups”• When an order is placed, inventory needs to be checked, then debited, credit

rating checked, ability to cross-sell checked– organizations need to partner with others to create service offerings– organizations need to re-act to new challenges and changes in strategic direction

quicker than before

• Lowering costs for delivering services and systems

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Problem Space – Cont.

• In short :– It is integrating in-house systems for greater value– It is exposing services for customers and partners– It is calling services of partners and vendors– It is the need to create an “on-demand business” delivered via

networks

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Evolution of Services• Shared Object Libraries & Dynamic Linked Libraries – first sharing of a

“service”• Remote Procedure Calls (RPC) – functions available on host or over TCP/IP

and first networked and distributed service, technology dependent• point to point TCP/IP server interfaces - technology and implementation

independent• Transaction Monitors (e.g. Tuxedo) – distributed, highly-scalable and

available services via messages and queues• CORBA ( ~ COM) – the first technology to be a “true distributed service”,

technology and implementation independence, first to introduce an agnostic interface definition language (IDL)– RMI is a variant but technology dependent

• SOAP & WSDL – distributed, technology and implementation agnostic, interface definition language (WSDL)

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Evolution of System Integration• point to point interfaces

– typically TCP/IP– initially all were custom, later standards (communication and messages) developed

like Health Level 7 (HL7)

• hub and spoke message brokers / appliances– centralized server with store’n’forward, routing, translation (in a declarative language)– light weight connectors (clients), typically prebuilt, that support industry standards and

common COTS applications

• EAI (enterprise application integration) Suites (MOM)– distributed, federated architecture– pre-built adapters, message bus (some type of queuing system), transformation via

scripting or interpreted language, repository of meta-data and configurations– GUI IDE and monitoring– ability to support web services and Business Processes

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Evolution of System Integration• SOA/Composite Application Suite

– State of the art, differs from traditional EAI suites in that:• queue is typically JMS (interface at least)• application server based• extensive Business process (BPM) support – design/IDE, execution, orchestration and monitoring• support for Business Process Execution Language (BPEL)• ability to create composite applications with GUIs from aggregating services• focus on web services and can act as a consumer and/or provider• service discovery mechanism or registry (e.g. UDDI)

• Enterprise Service Bus (ESB) – SOA/Composite Application suites are “deemed” by some as too heavy and too expensive

so lighter version created– Typically used to refer to a suite that supports the new Java Business Integration (JBI)

standard– More abstraction and runtime dynamic-ism with service virtualization– Composed of binding components, message bus, service engines, message routers

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

SOA Principles• Service orientation – Functionality is packaged as a set of interoperable services.

• Service loose coupling – Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other.

• Service contract – Services adhere to a communications agreement, as defined collectively by one or more service-description documents.

• Service abstraction – Services hide logic and implementation.

• Service reusability – Logic is divided into services with the intention of promoting reuse.

• Service composability – Collections of services can be coordinated and assembled to form composite services.

• Service autonomy – Services have control over the logic they encapsulate.

• Service discoverability – Services are designed to be outwardly descriptive so that they can be found and assessed.

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

SOA – a definition

• The acronym is over-hyped and very “over-loaded”

• Best attempt at a definition is Thomas Erl:“Service-oriented architecture represents an architectural model

that aims to enhance the agility and cost-effectiveness of an enterprise while reducing the overall burden of IT on an organization.

It accomplishes this through the positioning of services as the primary means through which solution logic is represented.”

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Players - SOA Stacks

• Sun Microsystems – JEE, JCAPS, OpenESB• IBM – Websphere• Oracle – Fusion, BEA• Microsoft – Biztalk• Software AG – Webmethods• Tibco – ActiveMatrix BusinessWorks• OpenSource – OpenESB, ServiceMix, Mule,

Petal, WSO2 (all ESB implementations)

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Players -SOA Stacks – Cont.• Advantage of Commercial Offerings:

– More real-world proving / testing, i.e. more robust

– Greater throughput

– Much better productivity tools, e.g. GUI drag’n’drop, pre-built functionality

– Greater depth and breath of tools esp monitoring

– More standards support

• Advantage of Open-Source Offerings:– Cost

– Support for Emerging Standards

– Lack of Vendor Lock-in

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

Case Study – BC Health Information Access Layer

Repositories

External Entities

Identity Pools

Registries

SHR

Client

DrugLAB

Independent User

Consent/Disclosure

Location

Provider

DAL DALDAL

RA

LR

AL

RA

LR

AL

RA

L

FEDIdentity

ManagerAccess

Manager

PR

OV

EHR Viewer

POS IAPOS EMR

Service Facade

Orchestration Fabric

Service Governance GovernanceAspects

GovernanceExecution

TransactionExecution

Log

Audit

SubscriptionServices

EncryptionServices

EHRIndex

DomainAccess

ServicesIndex

AccessServices

Longitudinal Record Services

NomenclatureMapping

TH

Others

DAL

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Truth – Hype Displaced

For SOA to truly succeed, business processes must be re-engineered to support it.

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Truth – Hype Displaced

The 8 Fallacies of Distributed Computing:

1. The network is reliable.

2. Latency is zero.

3. Bandwidth is infinite.

4. The network is secure.

5. Topology doesn't change.

6. There is one administrator.

7. Transport cost is zero.

8. The network is homogeneous.

#1-7 Peter Deutsch, Sun Microsystems (an original Sun "Fellows") 1994

#8 James Gosling, Sun Microsystems (Sun Fellow and the inventor of Java) 1997

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Truth – Hype Displaced Continued• Xml is unruly

– For example HL7 v3 messages, the basis of new federal healthcare network, has literally thousands of fields, many levels of nesting with optionality. To transform a basic lab result in v2 (~150 fields) to v3 resulted over 4000 lines of java code.

• Web services are not high-throughput – Especially if doing runtime schema validation in SOAP call

• The biggest of all hype – dynamic-ism & runtime config – Impractical and absolutely undesirable in real systems. Changes in any aspect of an

“interface” or consumption of a service requires pre-notification, planning and above all testing – complete regression and user acceptance testing

– You may not care that your mash-up of google earth does not display quite right because of a change but when it means transferring your pay into your bank account things change.

Southwest System Integration Inc. © 2009 Proprietary and Confidential.

The Future

• Trends & Developments:– JBI– WS-* standards– Industry Standards– Service Registries– Cloud Computing and SOA

• Issues:– Security, Security, Security– Service Governance (runtime)– Semantic Interoperability