soa tailoring

46
[email protected] SOA Tailoring

Upload: kimo

Post on 10-Feb-2016

72 views

Category:

Documents


0 download

DESCRIPTION

SOA Tailoring. [email protected]. What gives you the right to talk. Agenda. The SOA scene ESB / MS Platform Agile SOA Product SOA. Agenda. The SOA scene ESB / MS Platform Agile SOA Product SOA. The SOA Scene. Most people are doing SOA Some people knows what it really is about - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: SOA Tailoring

[email protected]

SOA Tailoring

Page 2: SOA Tailoring

What gives you the right to talk

Page 3: SOA Tailoring

AgendaThe SOA sceneESB / MS PlatformAgile SOAProduct SOA

Page 4: SOA Tailoring

AgendaThe SOA sceneESB / MS PlatformAgile SOAProduct SOA

Page 5: SOA Tailoring

The SOA SceneMost people are doing SOASome people knows what it really is aboutFew people really knows why they are

doing SOA

The scope and definition of SOA keeps expanding

SOA actually now delivers in some areas

Page 6: SOA Tailoring

The EA MafiaFocus on Enterprise ArchitectureNo real SOA without an Enterprise Service BusExtra cost justified by reuseBusiness agility comes later

Sounds a little like mainframe and waterfall development method

Read this

Page 7: SOA Tailoring

Remeber the SOA promiseBusiness agilityReusable services in the cloud

The good news is that this is delivered outside the EnterpriseMashupGoogle, Facebook, Flickr, Amazon, eBay,

Microsoft

Page 8: SOA Tailoring

AgendaThe SOA sceneESB / MS PlatformAgile SOAProduct SOA

Page 9: SOA Tailoring

ESB and the Microsoft stackThere has been a lot of arguing whether

Microsoft has an Enterprise Service BusIt is possible to develop SOA solutions

without an ESB ?Will a shrink-wrapped ESB product help

your organization ?Is ESB just old hat ?

Page 10: SOA Tailoring

ESB overview

Page 11: SOA Tailoring

Defining ESB Defining ‘ESB’

Many variations, products and technologies Commonality and convergence

Distributed, ubiquitous ‘fabric’ for message exchange and integration

Central administration and deployment Standards-based and secure messaging Centralized logging Lightweight containers Message exchange patterns & routing Adaptation and mediation Persistence and recoverability Orchestration and choreography

Page 12: SOA Tailoring

The Microsoft SOA platform today

• BizTalk Server 2006 R2– Message brokerage (pub/sub, message stream processing)– Integration toolset (adapters, transformation, EDI support, etc.)– Orchestration– Business activity monitoring– Business rules, Single Sign-on, B2B support, development tooling etc.

• Windows Communication Foundation (WCF)– Service model – loosely-coupled composition

• Asynchronous messaging primitives• MEP (message exchange patterns) and extensible behavioural support

– Channel architecture - transports and encodings• Windows Workflow Foundation (WF)

– Activity model – tightly-coupled composition• Workflow models – sequential, state transition• Base activity library• Extensible architecture• Rules

Page 13: SOA Tailoring

Who are you kidding? “Service Buses? Microsoft doesn’t get it!”

…but Microsoft says: “The Service Bus is a set of design patterns” “The Service Bus is about the platform, not the product” “ESB is a subset of the service bus approach. Other subsets exist”

“BizTalk Server is a mere hub & spoke message broker” BizTalk Server is pre-ESB, but firmly rooted in the same concepts

“WCF is interesting, but not ESB” That’s the point! It’s a foundation for building service buses. ‘Oslo’ will build on WCF

extending the service bus concept across applications, enterprises and ‘cloud’ computing

Page 14: SOA Tailoring

BizTalk Server Service Bus Robust, recoverable message exchange . Message Exchange Patterns (MEPs)

1-way, 2 way, reliable, ordered, etc No first-class support for duplex, but possible through custom adapters

Powerful pub/sub mechanism Process Automation

Orchestration engine Distribution and Scalability

Hosting model across multiple servers (Enterprise edition only) Load-sharing

Single-point administration (Enterprise edition only) Central ‘resource’ repository to aid deployment Adapter framework

OOB adapters, third-party adapters and custom adapters

Page 15: SOA Tailoring

BizTalk Server Service Bus Centralised model

‘Heavyweight’ model All messages persisted to Message Box

No lightweight, non-persisted, non-recoverable model Low latency and real-time challenges

Supports built-in service types only Orchestrations, Receive and Send ports Must use adaptation for other services Leads to over-use of orchestration

No built-in support for common ESB design patterns Addressed via the ESB Guidance Toolkit

Page 16: SOA Tailoring

WCF Service Bus Part of .NET Framework

Freely distributable – no licensing costs Provides lightweight container model

Service and channel model Hosting model

Wide range of MEPs, including duplex Extensive support for SOAP and WS-*

New support for Web 2.0 and REST WCF LoB Adapter Framework

Platform-level adapters Exposed as WCF bindings

Page 17: SOA Tailoring

WCF Service Bus Foundational only Administration, management and deployment

Does not provide OOB enterprise-level tooling No pre-built support for pub/sub

May be addressed in ‘Oslo’NB. early previews of ISB contain pub/sub model

Can be implemented today using custom code No pre-built persistence features

May be addressed in ‘Oslo’ No pre-built support for many common ESB design patterns

May be addressed in ‘Oslo’ Some support today via ESB Guidance Toolkit

Limited support for orchestration and choreography Can use WF with WCF

Page 18: SOA Tailoring

ESB Guidance Toolkit Patterns and Practices

Guidance & best practice Documented design patterns Production-ready code (open source)

Targets BizTalk Server R2 and WCF Not ‘Oslo’! Use as a ‘starter’ pack

Extend or create components Adapt code Add to functionality

Page 19: SOA Tailoring

ESB patterns examples

Point to point

Request response resolution

Page 20: SOA Tailoring

General ESB proswikipedia

Faster and cheaper accommodation of existing systems.

Increased flexibility; easier to change as requirements change.

Standards-based. Scales from point solutions to enterprise-wide

deployment (distributed bus). Predefined ready-for-use service types. More configuration rather than integration

coding. No central rules engine, no central broker. Incremental changes can be applied with zero

down-time; enterprise becomes "refactorable

Page 21: SOA Tailoring

General ESB conswikipedia

Enterprise Message Model is usually required, resulting in additional management overhead. May not be a simple task to achieve many disparate systems collaborating on message standards.

Requires ongoing management of message versions to ensure the intended benefit of loose coupling. Incorrect, insufficient, or incomplete management of message versions can result in tight coupling instead of the intended loose coupling.

It normally requires more hardware than simple point to point messaging.

New skills needed to configure, manage, and operate an ESB. Extra overhead and increased latency caused by messages

traversing the extra ESB layer, especially as compared to point to point communications.

Some critics remark that ESB require a significant effort to implement, but produces no value unless SOA services are subsequently created for the ESB.[

Page 22: SOA Tailoring

ESB RecommendationsVery few will benefit from implementing a

ESB productUnderstand the ESB concepts and patternsUse a pragmatic mix of WCF, WF and

Biztalk in that priorityKeep it simple

If it is Endpoint resolution, transformation and logging your are looking for ESB is way over engineered

Prepare for Internet Service Bus / Federated Service Bus

Page 23: SOA Tailoring

AgendaThe SOA sceneESB / MS PlatformAgile SOAProduct SOA

Page 24: SOA Tailoring

”Net generation” trendsServices outside the enterpriseLot faster time to marked … always in betaSpoiled employees does not follow

corporate policy or long term benefitsProvide them with the tools they need or

they will go elsewhere

Architecture decisions needs to accommodate soft values

Page 25: SOA Tailoring

Employees go elsewhere

Page 26: SOA Tailoring

But this stuff is just for fun isn’t it?What relevance does this have outside

of staff morale, corporate communications, professional networking, knowledge sharing, reducing time wasted in meetings and retention of intellectual property?

Page 27: SOA Tailoring

Gatwick Cabin Crew Swaps

Page 28: SOA Tailoring

Agile development is king• Scrum has been adopted as a very

successful development method– Empowered teams– 2-4 weeks iterations– Feature and test driven development

• Agile does not believe in reuse economic• Dynamic languages looks like the next big

wave– Ruby (on Rails)– Phyton– Groovy

Page 29: SOA Tailoring

Agile meets SOATraditional contract first web services are

expensiveTo buildTo updateIt helps if using a framework like WS SW

FactoryApplications and services are easily

intertwined but need to be kept aside

Page 30: SOA Tailoring

Not all services are alikeBe careful with service categorization

External WSCast in stone WS (e.g. Host integration server

to Mainframe)Application private WSLookup WS (e.g. REST type)Core Web Services

Different internal architecture, development approach and governance for the various service types

Page 31: SOA Tailoring

Keep focus on the Service ModelEven agile needs to respect adding to

the Service ModelUsing the right framework for the

Service Model it is a doable task

Page 32: SOA Tailoring

Don’t let WS slow you downLate introduction of WSModern tools and layered architecture

makes it trivial to add WS layer laterGet to WCF

Page 33: SOA Tailoring

Web Architectures requires WSThe Web 2.0 web applications heavily relies

on WSAJAXSilverlightAdobe XYZ

REST and JSON and similar technologies are predominant

Mashup and REST is a nice fit

Page 34: SOA Tailoring

Productivity is still kingLot of productivity coming out of Redmond

ADO.Net data servicesDynamic DataWCFSoftware Factories

Page 35: SOA Tailoring

Staying in control• When working agile in iteration remember

to have somebody responsible for the longer perspective

• Could even be an Enterprise Architect • In the end of the iteration feed information

back into the Enterprise– Update service models– Domain categorizations– Promote services

Page 36: SOA Tailoring

Agile wrapupAgile might not be the best longterm

strategy but it is vary hard to avoidThe SOA architecture needs to be prepared

for changes The technology catch-up for developers

and architects is huge so start small

Page 37: SOA Tailoring

AgendaThe SOA sceneESB / MS PlatformAgile SOAProduct SOA

Page 38: SOA Tailoring

SOA EconomyIn-house invented SOA components are

expensive and of questionable value.Reuse as funding to SOA overhead is

questionableThink twice before developing SOA

components for non core business, focus on key differentiators

If at all possible by SOA enabled products for non core business

Page 39: SOA Tailoring

SOA Enabled ProductA Product designed for the SOA worldA product build og loosly coupled componentsA product where components can be externalizedA product where business logic and user

interface is separated by a service layer

Page 40: SOA Tailoring

Example SOA enabled productOBA Blueprint

LOB Integration

360 BLWeb

Service

InfoPath FormsLibraries 360 Web parts

360 Process Manager

360 Backend Server LOB ActiveDirectory

External Services

Dat

aA

pplic

atio

n S

ervi

ces

Pro

duct

ivity

Pre

sent

atio

n

Org Workers

WF BDC WCFImport mail

serviceForms

Services

Citizens / Custome

rs

360

Secu

rity

and

logg

ing

Internet Portal (MOSS)

InfoPath 2007 Browser Forms

MOSS Intranet PortalOutlook with 360

plugin

Page 41: SOA Tailoring

ExampleExternalize the contact model

In this show case the contact model of a Enterprise Content Management system was replace with the customer model of Microsoft CRM

MS CRM SI 360

Page 42: SOA Tailoring

SOA ProductsStill in its infancyMight be delivered as installable productsMight be cloud servicesRequires a new mindset which provides

space for smaller vendors

Page 43: SOA Tailoring

SummaryUse ESB with care, only for very stable stuffConsider buying servicesUse your Enterprise Architect to maintain a

flexible Service ModelTechnology and business models are

changing rapidly to travel light

Page 44: SOA Tailoring

Comparing ESB and Cameras

Page 45: SOA Tailoring

Comparing ESB and CamerasBut in the end it all comes

down to the photographer and the motif

Page 46: SOA Tailoring

Questions ?