27
Building a Foundation for Continuous Change 5 Things to Avoid When Creating Your SOA David S. Linthicum, Managing Partner, ZapThink, LLC November , 2007 Building a Foundation for Continuous Change

5 Things To Avoid When Doing Soa

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

5 Things to Avoid When Creating Your SOADavid S. Linthicum, Managing Partner, ZapThink, LLC

November , 2007

Building a Foundation for Continuous Change

Page 2: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Current Issues

• Competing frameworks/approaches– Zachman Framework– Gartner/Meta Group– Open Group’s TOGAF (SOA Reference Architecture)– Vendors (IBM, Oracle, BEA, etc.)– Roll-your-own

• Hype-driven confusion (e.g., “SOA 2.0”)• Lack of leadership• Processes moving outside of the firewall• Departments operating independent of oversight• More enterprise applications are Web-delivered• Technology as a business advantage and cost saving

mechanism

Page 3: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 3

Business Constant: Change

CHANGE

CompetitionCompetition

Changing Changing MarketplaceMarketplace

Customer Customer DemandsDemands

Mergers & Mergers & AcquisitionsAcquisitions Optimizing Optimizing

ProcessesProcesses

New New TechnologiesTechnologies

Business PartnersBusiness Partners

A Business is Never A Business is Never STATICSTATIC

Page 4: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 4

We’ve had IT challenges for years …

Page 5: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 5

… but even after yesterday’s promises…

Page 6: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change Copyright © 2007, ZapThink, LLC

6

… we still have the same IT mess, only worse.

Page 7: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 7

The Business Inflexibility Trap

• Inflexibility is the Mother of All Business Problems– If you’re flexible enough, you can solve all the other problems

• Information Technology (IT) is an impediment to business change– It wasn’t supposed to be that way!

Page 8: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 8

• Companies require Business Agility…

»Responding quickly to change, and

»Leveraging change for competitive advantage

J

Business Agility

Agility is the key to innovationAgility is the key to innovation

Page 9: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 9

The Problems of IT are The Problems of Business

Page 10: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 10

If you are in a Hole, Stop Digging!

• IT Decision Making’s Fatal Flaw:– Choice between “take some extra time & money and do it right”

vs. “give me what I want the cheapest & fastest way” – guess which wins?

• Repeat enough times, leads to the IT “Rat’s Nest”

Page 11: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change 11

The Integration “Rat’s Nest”

FBT PAY GNTS

TRDS

Client

Customs

RREIPS Integrated A/C Refunds

RBADef

PaymentsExcise

CR

PKI

ECI ADD AWA ELS

Client Staff RemoteStaff

TAXAGENTS

GCI

Call Centers

WOC

CCD

TASS

StaffPhone

ComplianceStaff

BOA

Ref material

Bus. Intel

NTS A/c

BEP

CDCCCWMS

BANK

DDDR

1

Data…….

Penalty

Business

IVR

1

Page 12: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

5 Things to Avoid

1. Using the wrong people.

2. Selecting the technology too early.

3. Not considering “service design.”

4. Not factoring in the business.

5. Not thinking long term, and strategic.

Page 13: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Using the Wrong People

• Perhaps this is something you should not outsource.– This is architecture, not development.– This is strategic, not tactical.

• Existing talent may not be up to speed.– You may love your current team, but perhaps they are not up

for the job.– Make the cuts now, not later.

• Don’t let consultants or vendors drive the project.

Page 14: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Selecting the Technology too Early

• Don’t “manage by magazine.”• Don’t overuse “comfort vendors.”• Avoid VDA (vendor driven architecture)• Business -> Requirements -> Analysis ->

Technology. Now repeat!• Make sure to do a POC, and other testing.• Never be afraid to toss out technology.

Page 15: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Not Considering “Service Design”

• Services are not applications.• Services are not APIs.• Services are services, and should be designed

properly.– Consider granularity.– Consider repeatable design.– Consider testing.

Page 16: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Not Factoring in the Business

• Always do ROI analysis before you begin work on your SOA.

• Understand core business processes, and what needs to improve.

• Understand core business drivers, and be able to sell them within the organization.

• Make sure business analysts have input at various stages.

Page 17: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Not Thinking Long Term, and Strategic

• SOA has a positive impact after years, not months.

• SOA is not a development project, it’s a journey.• SOA requires a systemic change in how you do

architecture, it’s not just an instance of an architecture.

• SOA requires long term corporate commitment to be successful.

Page 18: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Understand your business

objectives and

define success.

ROIROIDefine ROI

Create Business Case

Business

Case

Business

Case

Page 19: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Define your problem domain

System

Descriptions

System

Descriptions

System Complexity Analysis

SOA POC

POC

Results

POC

Results

Domain

Descriptions

Domain

Descriptions

Vendors

Page 20: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Understand all application

semantics in your domain.

SOA

Metadata

SOA

MetadataMeta data analysis

Data abstraction

layer definition

Data

Abstraction

Layer

Data

Abstraction

Layer

Data services definition

Data

Services

Data

Services

Legacy

Metadata

Legacy

Metadata

External

Metadata

(B2B)

External

Metadata

(B2B)

Page 21: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Understand all services

in your domain.

Candidate

Services

Candidate

ServicesService analysis

Metadata and

services analysis

Services

And

Information

Services

And

Information

Performance analysis

Services

And

Performance

Services

And

Performance

Legacy

Services

Legacy

Services

External

Services

(B2B)

External

Services

(B2B)

SOA

Metadata

SOA

Metadata

Page 22: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change Copyright 2007 The Linthicum Group, LLC

Understand all processes

in your domain.

Candidate

Processes

Candidate

ProcessesProcess analysis.

Define metadata, services,

and processes

Processes,

Services,

And

Information

Processes,

Services,

And

Information

Process integration

analysis.

Process

Integration

Diagrams

Process

Integration

Diagrams

Candidate

Services

Candidate

Services

External

Processes

(B2B)

External

Processes

(B2B)

SOA

Metadata

SOA

Metadata

Page 23: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change Copyright 2007 The Linthicum Group, LLC

Define new services.

Candidate

Processes

Candidate

Processes

Service definition.

Service design.

Processes,

Services,

And

Information

Processes,

Services,

And

Information

Service implementation.Process

Integration

Diagrams

Process

Integration

Diagrams

SOA

Metadata

SOA

Metadata

Candidate

Services

Candidate

Services

Service

Definition

Service

Definition

Service

Design

Service

Design

Service

Implementation

Service

Implementation

Page 24: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change Copyright 2007 The Linthicum Group, LLC

Define new processes.

Candidate

Processes

Candidate

Processes

Process definition.

Process design.

Processes,

Services,

And

Information

Processes,

Services,

And

Information

Process implementation.Process

Integration

Diagrams

Process

Integration

Diagrams

MetadataMetadata

Candidate

Services

Candidate

Services

Process

Definition

Process

Definition

Process

Design

Process

Design

Process

Implementation

Process

Implementation

Page 25: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Select your technology set.

Technology

Requirements

Technology

Requirements

Define requirements.

Technology analysis.

Technology

solution

Technology

solution

Vendors

Define candidate technology.

Technology selection.

Technology validation.

Page 26: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

“SOA is Good…”

• Pay me now, or pay me later. Make sure you do it right the first time…get the help you need.

• Don’t be afraid to experiment, and admit you’re wrong…backup and try again.

• Keep your vendors working with you.• Empower those working, so they can work to get things

done. Avoid politics, if possible.• Learn all you can, but don’t get caught up in the hype. • Put standards in their proper place. • Small battles win the war…Keep that in mind.• Give yourself plenty of time, never skimp on any of the

steps.

Page 27: 5 Things To Avoid When Doing Soa

Building a Foundation for Continuous Change

Thanks!

• Blogs:– InfoWorld “Real World SOA”– Intelligent Enterprise “SaaS Advisor”

• Weekly Podcast– InfoWorld SOA Report

• Columns– Web Services Journal– SD Times