level set – what is soa?doveltech.com › wp-content › uploads › 2017 › 09 ›...

23
1 Copyright © 2005, ZapThink, LLC Service-Oriented Architecture Implementation Roadmap Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald Schmelzer Senior Analysts ZapThink, LLC Take Credit Code: SWISSIR Copyright © 2005, ZapThink, LLC Level Set – What is SOA? SOA is architecture – a set of best practices for the organization and use of IT Abstracts software functionality as loosely-coupled, business- oriented Services Services can be composed into business processes (which are also Services) in a declarative manner

Upload: others

Post on 27-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

1

Copyright © 2005, ZapThink, LLC

Service-Oriented ArchitectureImplementation Roadmap

Presentation for Swiss ClientOctober 26, 2005

Jason Bloomberg and Ronald Schmelzer Senior AnalystsZapThink, LLC

Take Credit Code: SWISSIR

Copyright © 2005, ZapThink, LLC

Level Set – What is SOA?

• SOA is architecture – a set of best practices for the organization and use of IT

• Abstracts software functionality as loosely-coupled, business-oriented Services

• Services can be composed into business processes (which are also Services) in a declarative manner

Page 2: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

2

Copyright © 2005, ZapThink, LLC

Service-Oriented Architecture

• The Definition:– An approach to building and managing distributed computing

infrastructures that considers IT resources as Services available and discoverable on a network.

• The Implication:– Rather than dealing with isolated systems that must be

integrated after the fact, Service Orientation provides business users with understandable Services they can call upon and compose into business processes as needed – building systems that can adapt as the business changes.

• The Benefit:– The Service Orientation vision is therefore one of providing the

business values of agility and flexibility for users of technology, coupled with an abstraction layer that simplifies the complexity of today’s heterogeneous IT environments from those users.

Copyright © 2005, ZapThink, LLC

SOA shifts the way we think

Compose ServicesIntegrate Silos

Loosely Coupled, Agile and Adaptive

Tightly Coupled

Designed to changeDesigned to last

Favors Heterogeneous TechnologyFavors Homogeneous Technology

Architecture makes it workMiddleware makes it work

Business centeredCost centered

Interactive and iterative development

Long development cycle

Process OrientedCode Oriented

Service Oriented ArchitectureTraditional Distributed Computing

Page 3: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

3

Copyright © 2005, ZapThink, LLC

Characteristics of SOA

Services are loosely coupled – making a change to a Service provider does not mandate changing any Service consumers

Business processes are composed of Services, and are in turn exposed as Services

Services are policy-driven – business users can change how a Service behaves

Systems are inherently integrated by virtue of composable services –not through layers of middleware

Services leverage legacy systems – SOA does not mandate replacement of runtime infrastructure

In SOA, metadata control how the system behaves, not code. Business logic trumps application logic

In SOA, it’s the contracted interface that matters, not the underlying runtime environment.

Copyright © 2005, ZapThink, LLC

The Benefits of SOA…

Reduced cost of integration

Improved value from legacy applications

Reuse leading to reduced redundancy

Greater visibility for governance & compliance

Increased reuse of software assets

Business agility…– Respond quickly & efficiently to business change– Leverage change for competitive advantage

Page 4: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

4

Copyright © 2005, ZapThink, LLC

SOA Hotspots

• Four key areas of SOA investment– Reduction in integration expense– Increase in Service / asset reuse– Increase in business agility– Enablement of governance &

compliance

• Key Problem areas– EAI replacement– Legacy enablement/migration– Shared Service development– Governance– Embedding processes in the

extended enterprise

Copyright © 2005, ZapThink, LLC

Don’t Get Lost in the Terminology

• There are many styles for SOA implementation

• Focus on your goals: Reuse? Governance? Reduced integration cost? Agility?

ESB? EAI?

SOA?EDA?EDA?

Fabric?

Abstraction?SOA Infrastructure?

Service Grid?Service Network?

Page 5: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

5

Copyright © 2005, ZapThink, LLC

Web Services make implementing SOA easier, but they aren’t the

same

MainframeLogic

MainframeLogic

EISEIS CustomApp

CustomApp

Web Services Web Services Web Services

Security Security Security

Messaging Messaging Messaging

TransactionsTransactions

MainframeLogic

MainframeLogic

EISEIS CustomApp

CustomApp

Web Services Web ServicesWeb Services

SOA Abstraction LayerSOA Abstraction LayerTransactions Messaging Security

Business Services Data Services Discovery

Man

agem

ent

Mon

itorin

g

Standard architecture with Web Services

SOA leveraging Web Services

Source: HP

Copyright © 2005, ZapThink, LLC

Web Services are the Trees….

Service Orientation is the Forest

Page 6: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

6

Copyright © 2005, ZapThink, LLC

Service orientation…the next big thing?

Approach TimeframeProgramming

ModelBusiness

Motivations

Mainframe timesharing1960s –1980s

Procedural (COBOL) Automated business

Client/server 1980s-1990s

Database (SQL) and fat client (PowerBuilder, Visual Basic)

Computing power on the desktop

n-Tier/Web 1990s-2000sObject-oriented (Java, COM)

Internet/eBusiness

Service orientation 2000sService-oriented (SOAP, WSDL, UDDI)

Business agility

Copyright © 2005, ZapThink, LLC

SOA is a discipline…

• Implementing a Service-Oriented Architecture is a journeyjourney

• Moving from proprietary interfaces to standards-based ones is just the first step…

• SOAs require a combination of security, management, governance, integration, process, and architecture tools

• What are the right steps to guarantee overall success?

• How can you guarantee an ROI while reducing risk?

Page 7: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

7

Copyright © 2005, ZapThink, LLC

What is Architecture?

The fundamental organization of a system embodied by its components, their relationships to each other and to the environment and the principles guiding its design and evolution. (IEEE P1471/D5.3)

Copyright © 2005, ZapThink, LLC

In Particular, SOA is Enterprise Architecture

Enterprise architecture includes:

• An aggregated architecture of all the individual IT systems within an organization

• The human element within the enterprise

• Systems, people, and organizational constructs at other companies that have relationships with the enterprise

• Individual consumers who are that enterprise’s customers

• Corporate governance

Page 8: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

8

Copyright © 2005, ZapThink, LLC

The Challenges with doing SOA right

• Architecture? Sounds difficult!• Performance issues around XML• New tool and infrastructure requirements

– Messaging– Contract development– Composite application development– Metadata management– Policy infrastructure

• But… doesn’t this infrastructure already exist?

Copyright © 2005, ZapThink, LLC

SOA’s Little Secret

• You can build SOA with whatever software you already have (for the most part)

• When considering purchasing software for your SOA initiative, look to fill the functionality gaps in your current portfolio

• Don’t just add middleware for your middleware!

Page 9: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

9

Copyright © 2005, ZapThink, LLC

The ZapThink SOA Roadmap

Copyright © 2005, ZapThink, LLC

ZapThink’s SOA Implementation Roadmap

Heterogeneous Systems with Proprietary Interfaces

Manage Services

Implement the SOA Metamodel

Service-Oriented ProcessSemantic Integration

Dynamic Service Discovery

Secure Service Interfaces

Wrap Legacy Systems in Services Interfaces

Service-Oriented Enterprise

Enterprise SOA Buildout

Mission-Critical SOA

SOA Pilots

“Grass Roots” Web Services Implementations

Create a Governance Framework

Contract-First Development

Cross-Departmental SOA

Page 10: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

10

Copyright © 2005, ZapThink, LLC

The Old Way: Rip & Replace

• Expensive & risky to replace

• Expensive & risky to keep around

• Absolutely necessary for the business

Copyright © 2005, ZapThink, LLC

The New Way: Squeeze Value

• SOA enables thrift: getting more value out of existing assets

• Wrapping as Web Services only the first step

• Challenge: Building Services from Legacy Systems at the rightlevel of granularity

Page 11: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

11

Copyright © 2005, ZapThink, LLC

SOA Abstracts the Plumbing

• Goal is reusable, composable business Services

• Infrastructure hidden under Services layer of abstraction

Copyright © 2005, ZapThink, LLC

The OSI Stack Revisited

• Content Security, as well as– Semantics– Taxonomies– Policy– Schemas– …

7

6

5

4

3

1

2Traditional perimeterTraditional perimeter--

based approaches wholly based approaches wholly inadequateinadequate

Page 12: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

12

Copyright © 2005, ZapThink, LLC

The Security Context Challenge

rschmelzer

RonSchmelzer

rschm123

Selective

Read / Write

Read Only

Full Read/Write???

???

Copyright © 2005, ZapThink, LLC

Building SOA the Right Way

• SOA is all about continuous and sometimes unpredictable change

• Development issues

– How to handle versioning?

– How to handle metadata management?

– How to develop changing policies?

• Runtime issues

– Service availability

– Policy enforcement

– Guarantee service-level agreement

– Maintain low TCO

Page 13: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

13

Copyright © 2005, ZapThink, LLC

Challenge: Service Granularity

• The trick of building composable Services is building at the right level of granularity

• Challenges:– Engraining business logic into code– Decomposing legacy services that are not fine-

grained enough

• Method– Top-down process decomposition, vs. bottom-

up Service development– Must be iterative

Copyright © 2005, ZapThink, LLC

Contract-First Development

• Service contracts specify required functionality to IT and provided functionality to the business

• Service model represents the clearinghouse for information about IT environment

• Contracts go beyond WSDL:– Usage policies– Security policies– Consumer delivery contracts– Service-level agreements, etc.

Page 14: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

14

Copyright © 2005, ZapThink, LLC

What’s in a Contract?

Functional Requirements

Non-Functional Requirements

Service Operations Infrastructure URI

Security QoS Transactions Commerce / Biz Rules

Service Level Semantics Process

Copyright © 2005, ZapThink, LLC

What’s NOT in the Contract

A "Contract" is an expression of A "Contract" is an expression of visiblevisible aspects of Service behavior.aspects of Service behavior.

It does NOT specify:• Service Implementation Details

– Programming model – Object references– In-memory representations

• Examples– Exposing Java Classes– Serialization of Java Objects

Page 15: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

15

Copyright © 2005, ZapThink, LLC

Important Points: Managing Services

• You need management when you offer your first “mission critical” Web Service (don’t wait!)

• Management is critical for building and running enterprise-class SOAs

• The Service-Oriented Management space is still in flux

Copyright © 2005, ZapThink, LLC

Service-Oriented Management

• Are your Services up and running?

• Are the right consumers accessing the right Services?

• How do you keep consumers & producers of Services loosely coupled when Services change?

• How do you fix things when something goes wrong?

• Are you providing the required quality of Service?

• SOA enablement…

Page 16: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

16

Copyright © 2005, ZapThink, LLC

SOA Enablement…

• Provide and enforce the SOA layer of abstraction

• Combine fine-grained APIs into coarse-grained business Services

• Mask complexity of underlying technology: message protocols, adapters, APIs, etc.

• Handle quality of service, scalability, etc. “behind the scenes”

Copyright © 2005, ZapThink, LLC

The SOA Metamodel

Business Model(Use Cases) Service Model Platform

Dependent Models

Deployment View

System Architects &System Engineers

Implementation View

Technical Architects & Developers

Process View

Business Analysts

Logical View

Line-of-Business Users

TechnologyViews

BusinessViews

Use-case View

Service-Oriented Architects

Copyright © 2003 ZapThink LLC

Page 17: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

17

Copyright © 2005, ZapThink, LLC

CompositeApplication

Delivery

BusinessServices

BusinessProcesses

SOA Fabric AtomicServices

Data Integration

Legacy Applications

and Middleware

SOA: A Technology View

Databases

Governance and Security InfrastructureGovernance and Security Infrastructure

SecuritySecurity

ManagementManagement

RoutingRouting

TransformTransform

AA

BBCC

DD

EE

AA

BBCC

DD

EE

MessagingMessaging

Rich Rich ClientsClients

Composite Composite AppsApps

DiscoveryDiscovery

Source: MW2 Consulting

Copyright © 2005, ZapThink, LLC

• What does it mean to build business logic in metadata?

• The power is not the interface specification, but in the Service abstraction

• Code meets requirements of contracts – but does not specify a contract of its own!

J

Fundamental Idea: Business Logic in Metadata

Source: Copyright © 2002 ZapThink, LLC

ContentManagement

Web Site

File System

RDBMS

Office Documents

B2B Exchanges

Directory

ERP / CRMSystems

Mainframe / Legacy

NetworkedDevices

No

N- o

r S

EM

I-S

TR

UC

TU

RE

D

ST

RU

CT

UR

ED

Source: IBM

Page 18: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

18

Copyright © 2005, ZapThink, LLC

Metadata Management Requirements

• In an SOA, business logic is in metadata, not code• Types of metadata

– Service interfaces– Business process flows– Policy definitions– Event messages and types– Schema and semantics

• Need: development tools and methodologies

This is the state of the art for SOAThis is the state of the art for SOA

Copyright © 2005, ZapThink, LLC

What are we talking about?

• Metadata Management– SOA’s not about the code… it’s about the

metadata

• Definitions–Repository: Where assets are stored–Registry: How to find and work with the assets you need –wherever they are–Products have aspects of both

Page 19: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

19

Copyright © 2005, ZapThink, LLC

Standards vs. Products

• STANDARDS provide interoperability while PRODUCTS provide functionality

• UDDI: A standard for Registry Interoperability; ebXML & JAXR other registry-related standards (may be more?)

• UDDI and the other standards are NOT products!• There are many other ways to interact with registries• Registries do more than just UDDI• Repositories have a UDDI role, too!

Copyright © 2005, ZapThink, LLC

Service Registry/Repository: Roles

Enablement

How do I quickly

• design

• develop

• deploy

my Web services SOA software?

Publishing

How do I certify and approve my services for:

• company

• IT

• SOA

standards and deployment readiness?

Management

How do I make services scale for:

• availability

• reliability

• integrity

• measure overall quality?

Discovery

How do I:

• share

• find

• use

my services anytime, anyplace, anywhere?

Source: Systinet

Page 20: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

20

Copyright © 2005, ZapThink, LLC

Service Registry/Repository: Roles

• Mapping Business Processes to SOA Model

• Business, IT governance development

• SOA foundation development

• Web services development

Enablement

• Registering Business Services and SOA information

• Certification Process

• Change Management

• Approval Process & Management

Publishing

• Locating and using Services

• Design time usage

• Run-time usage

• Configuration and Change

• Coordination Management

Discovery

• Operating, monitoring, and changing services

•Change, Impact Analysis

•SLA & Policy Management

• Integration -Security & Identity Mgmt

•Log, Reports

Management

Source: Systinet

Copyright © 2005, ZapThink, LLC

What is a Business Process?

• What a business does

• Range from fully manual (no IT involvement) to fully automated (no human involvement)

• Most processes are partially automated

Page 21: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

21

Copyright © 2005, ZapThink, LLC

Business Process the Old Way…

• People plugged into rigid processes• Inflexible & brittle

Copyright © 2005, ZapThink, LLC

Business Process the Service-Oriented Way…

• IT resources (among other resources) available to the business as needed

• Business users compose applications on the fly

Page 22: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

22

Copyright © 2005, ZapThink, LLC

The Key: The Services Abstraction

• Services abstract underlying functionality & data to the business

• Also abstract business requirements to IT• Lines of business should work with

metadata — without direct IT involvement

Service Model

Service Metadata

ExistingInfrastructure

Lines ofBusiness

Copyright © 2005, ZapThink, LLC

Service-Oriented Process

• Processes that are coarse-grained: composedof Services and exposed as Services

• Processes that are loosely coupled: a change to a process flow, activity, subprocess doesn’t effect other processes

• Processes that are asynchronous• Processes that are dynamically discoverable

PROCESSES THAT CAN RESPOND TO CHANGE

Page 23: Level Set – What is SOA?doveltech.com › wp-content › uploads › 2017 › 09 › SOARoadmap-Swi… · Presentation for Swiss Client October 26, 2005 Jason Bloomberg and Ronald

23

Copyright © 2005, ZapThink, LLC

Role of Composite Applications

• Architecture guides composition of Services

• Legacy assets key part of Service-oriented composite apps

• Challenge: top-down process first or bottom-up system first?

• Benefit: combine old legacy processes with new composite business logic

Copyright © 2005, ZapThink, LLC

Thank You!

Jason Bloomberg

[email protected] Schmelzer

[email protected]

Photos © Lisa Polucci