Top Banner
22-10-2008 1 Founding Sponsors This Presentation Courtesy of the International SOA Symposium October 7-8, 2008 Amsterdam Arena www.soasymposium.com [email protected] Gold Sponsors Platinum Sponsors Silver Sponsors Guerrilla SOA How to fight back when a vendor takes control of your enterprise Dr. Jim Webber http://jim.webber.name
22
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

1

Founding Sponsors

This Presentation Courtesy of the

International SOA Symposium

October 7-8, 2008 Amsterdam Arena

www.soasymposium.com

[email protected]

Gold Sponsors

Platinum Sponsors

Silver Sponsors

Guerrilla SOAHow to fight back when a vendor takes control of your enterprise

Dr. Jim Webber

http://jim.webber.name

Page 2: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

2

Fundamental Premise

There are two things money cannot buy:

1. Love(Lennon/McCartney)

2. An SOA(Webber)

Roadmap

• Enterprise Application Integration Approaches

• Enterprise Architecture, now and future

• The Appealing Rationale for ESB...

• Enterprise Architecture

• Realising SOA with Web Services, Or

• Realising SOA with the Web

• What this means for you

• Conclusions

• Q&A

Page 3: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

3

Integration Approaches

• Data integration– Extract, transform, route, inject data

• Application level– Re-use application APIs, or I/O mechanisms

• EAI implementation– Queues etc

• Business domain tier– Integration at the object level, as typified by CORBA,

DCOM etc

• User interface – Screen scraping, revamping, etc.

– Last resort, when an application offers no other hooks

To ESB or not to ESB, that is the question

• Product vendors are keen to provide product solution for everything

– Or to supply “consultantware” solutions

• The Enterprise Service Bus is the latest incarnation of EAI technology that supports a number of useful functions:

– Transformations; adapters; choreography; reliability; security etc

• Seems like a good idea...

Page 4: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

4

Today’s Enterprise ArchitectureAccounting Marketing

SupportProduct Development

How did we get here?

• Tactical decisions

• Time and technology pressures

• Path of least resistance for individual

applications

• This is the thin end of the wedge,

technical debt can only increase from

here

• Help!

Page 5: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

5

Vendor Solutions Appear

• Business needs to compete– IT needs to be responsive

• SOA gives IT a business process focus

• Web Services are the most sensible way to implement SOA

• More proprietary middleware is the answer!– 2 + 2 = 5 http://www.capeclear.com/technology/index.shtml

Integration Two Years LaterAccounting Marketing

SupportProduct Development

Enterprise Service Bus

Page 6: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

6

Skeletons in the Closet...

Enterprise Service Bus

The Appealing Rationale for ESB...

• Perceived single framework for all

integration needs

• Perceived simple connectivity between

systems

• Some features for security, reliable

delivery, etc.

• All you have to do is agree to lock

yourself into a ESB and all this can be

yours...

Page 7: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

7

...And the Reality

• The mess is swept under the carpet hidden inside a vendor box– Mixing business rules, transformations, QoS etc with

connectors

• Vendor lock-in of the whole network!– ESBs are proprietary, so no guarantees that the

messages transmitted across the bus are actually based on any open protocol

• Held to ransom by the ESB vendor!– Can only easily integrate systems for which the ESB

vendor provides specific adaptors

– Or invest your money into extending their product

Intelligent Networks, Dumb Idea?

• Isn't this precisely what we're trying to get away from?

• Integration should happen on the wire by default, not inside some server

• The ESB approach eschews the dumb network

– Smart endpoints underpin scalable, robust systems

– Smart networks are failure points

Page 8: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

8

More plumbing gets built

SOA “experts” grow powerful

Page 9: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

9

And ESB software grows…

… the wrong way

Page 10: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

10

On a rich diet

BPM

Rules

Engine

Low

Latency

Adapters

GUI Tools

Transformations

Security

Reliability

Integration five years from nowAccounting Marketing

SupportProduct Development

Research

IT

Enterprise Service Bus

Page 11: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

11

Integration ten years from now

Accounting Marketing

SupportProduct Development

Research

IT

ESB

Architectural Fantasy

Page 12: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

12

Ungovernable

Doesn’t Scale

Page 13: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

13

How did this happen?

• Same old story:– Tactical decisions

– Time and technology pressures

– Path of least resistance for individual applications

• Centralised ownership of the ESB sometimes is an inhibitor– Too much effort to get on the bus, technically,

politically

– Individuals always mean to redress hacked integrations

– But seldom do – it’s too hard when systems are live

Spaghetti is a fact of life

• Businesses change

• Processes change

• Applications change

• Integration changes

• Need an enterprise computing strategy that:– Reflects the changing structure of the business;

– Is spaghetti-friendly;

– Commoditised;

– Robust, secure, dependable, etc.

Page 14: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

14

Business-Led Integration

• ESBs integrate with whatever existing systems expose– Green screen, web pages, CORBA objects, XML, etc

• Integration happens at a low level– Mapping of bits and bytes of one variety onto bits and bytes of

another format

• This makes it hard to engage business in such projects– Without business benefit no software has value

• Integration is currently opaque to the business

• Business must be involved in integration projects – not just initiate them– The integration domain must use the same vocabulary as the

business domain

Spaghetti-Oriented Architecture

• Fighting against spaghetti is usually unsuccessful

– This does not mean integration should be undertaken without diligence!

• SOA is an approach which is spaghetti-agnostic

• Services are designed for integration with any consumer

– Integration is decentralised

• Result:

– Loosely coupled, re-usable services

– Focus on business-meaningful process orchestration

Page 15: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

15

SOA and Web Services Approach

• Applications (or subsets of applications) are identified as being service-amenable– Or (sub) processes are identified for which there is no

existing application/service

• Web Services infrastructure is layered on top of the application, exposing a SOAP interface to the rest of the network– Business meaningful message exchanges

• Other services consume the functionality via SOAP message exchanges

• Traditional integration infrastructure is kept within the Web Service implementation, if used at all

Building the Service-Oriented

Enterprise• SOAP becomes the ubiquitous transfer mechanism

across the enterprise (or Internet!)

• In effect, SOAP messages are the “EAI backbone” – The underlying transport protocols are arbitrary

• Applications understand SOAP messages natively– True end to end integration, but maintains loose coupling

• In this context, existing ESB/EAI software becomes a toolkit for implementing individual Web Services

• But integration happens at the SOAP level– Can commoditise what’s underneath

Page 16: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

16

Decentralised Integration• The QoS functionality

that a Web Service requires is implemented on a per-service basis– Not “one size fits all”

• Implement only those QoS protocols that the service currently needs– Push the integration

functionality to the edges

• SOAP + WS-Addressing becomes the “bus”

• Incremental and autonomous– Deliver high business-

value services first!

Non-Repudiation

Reliable Delivery

Security

Transactions

Application Integration...

Bus

Choreography/Rules/Routing/Transformations

Adapter Adapter Adapter

Application Domain

• EAI/ESB frameworks are fine for applicationintegration– A framework for development of (distributed) applications

• Think of the EAI toolkit as a container for your application– Application versus enterprise framework

Page 17: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

17

...and Composite Business

Processes

• Processes across the enterprise consume

and coordinate lower-level applications

– Exposed via standards-based services

Bus

Choreography/Rules/Routing/Transformations

Adapter Adapter Adapter

Application Domain

Gateway

Enterprise Process Domain

SOAP

Messaging,

WS-*

Metadata, Metadata, Metadata…

<endpoint…>

</endpoint>

<mex…>

</mex>

<wsdl…>

<policy…>

</policy>

</wsdl>

Page 18: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

18

Policy and Contract

<wsdl…>

<policy…>

</policy>

</wsdl>

<wsdl…>

<policy…>

<security-policy>

</security-policy>

<transaction-policy>

</transaction-policy>

<reliability-policy>

</reliability-policy>

</policy>

</wsdl>

We

b S

erv

ice

s C

lie

nt

Sta

ck

(W

CF

)

Proxy Generation<wsdl…>

<policy…>

<security-policy>

</security-policy>

<transaction-policy>

</transaction-policy>

<reliability-policy>

</reliability-policy>

</policy>

</wsdl>

Proxy API

Consumer Implementation

Security Handler

Tx Handler

RM Handler

Page 19: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

19

We

b S

erv

ice

s C

lie

nt

Sta

ck

(W

CF

)

End-to-End Messaging

Proxy API

Consumer Implementation

Security Handler

Tx Handler

RM Handler

We

b S

erv

ice

s C

lie

nt

Sta

ck

(W

CF

)

Proxy API

Service Implementation

Security Handler

Tx Handler

RM Handler

Transport

“WS-Fabric”

Service

Ad

min

istr

ative

do

ma

in

Service

Service

Service

Administrative

domain

Service

Service Ad

min

istra

tive

do

ma

in

network

SOAP messaging is the communication channel for applications.

The ESB (if it exists) is pushed to the endpoints.

Page 20: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

20

Same Old Architects

• Business and IT people collaborate around automating business processes– Re-using those processes (services) already

deployed into the service ecosystem

• Service architects and developers build services– Using WS toolkits like WCF and Axis

– Or RESTlet, NetKernel, ASP.Net MVC, Rails, etc

• Enterprise architects spread best practices– and undertake necessary governance roles

ESB xorSOA?• Investing in proprietary integration

systems now is investing in future legacy

• ESB is not the solution

– It’s oh-so 1990’s integration glue

• SOA is the solution

– Because it focuses on supporting business

processes

• Web Services are a robust and

commoditised platform for SOA delivery

Page 21: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

21

Conclusions• SOA is the right integration architecture going forward

– SOA can be implemented incrementally

– Drive SOA from a business perspective

• Most valuable processes/applications/services first

– Commoditisation across the board

• Servers, developers, networking, re-use existing software, etc

• Migrating towards a successful SOA is not always easy

– Learning to build dependable SOAs can be difficult

– ESBs and Wizards cannot help – you need service-savvy geeks and

process-aware business people

• No centralised integration middleware needed!

It looks like you’re trying to build an SOA...

Quote of the Day

“…the idiots that are running around

yelling "guerrilla SOA" have to be put

in their place.”

Quoted on InfoQ:

http://www.infoq.com/news/2007/11/so

a-long

Page 22: Jim Webber    Guerrilla  S O A With  Web  Services

22-10-2008

22

Questions?

Blog:

http://jim.webber.name

GET /Connected

Jim Webber

SavasParastatidis

Ian Robinson

Expected Q1 2009