34
Insight for Web Services & Software Component Practice www.cbdiforum.com Emerging Best Practices in Service Oriented Architecture David Sprott Business Service Business Service Business Process Software Service Software Service Software Service Business Service Software Automation Unit

Insight for Web Services & Software Component Practice Emerging Best Practices in Service Oriented Architecture David Sprott

Embed Size (px)

Citation preview

Page 1: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

Insight for Web Services & Software Component Practice

www.cbdiforum.com

Emerging Best Practices in Service Oriented Architecture

David Sprott

Business Service

BusinessService

Business Process

Software Service

Software Service

Software Service

Business Service

Software Automation Unit

Page 2: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Agenda

Service Architecture Service Technology Service Lifecycle Process

Page 3: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Architecture

Page 4: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Architecture

Service Architecture enables: Common behaviours Common vocabulary Application independence Generalization Sharing

Web Service Technology enables: Invocation Encapsulation

Articulation Replaceability Upgradeability Choice of supply Manageability

Page 5: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Architecture

Co

ns

um

er

ServiceArchitecture

ApplicationArchitecture

Page 6: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Architecture

ComponentArchitecture

ComponentArchitecture

Co

ns

um

er

Pro

vid

er

ServiceArchitecture

ApplicationArchitecture

Page 7: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Rationalizing the Existing Portfolio

Co

ns

um

er

Pro

vid

er

ServiceArchitecture

ApplicationArchitecture

Page 8: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Virtualizing Resources

D & BElvion

Co

ns

um

er

ServiceArchitecture

ApplicationArchitecture

Pro

vid

er

Page 9: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Reengineering the Business

Xignite Google Thomson SalesforceD & BElvion

Co

ns

um

er

ServiceArchitecture

ApplicationArchitecture

Pro

vid

er

Page 10: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Creating Service Ecosystems

ServiceArchitecture

ServiceArchitecture

ServiceArchitecture

ServiceArchitecture

Page 11: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

CBSE – Component Based Service Engineering

ComponentService

Definition

Component:ObjectService

instance-of

Service – Client’s View

Design Time

Component – Supplier’s View

What does it do for me? What is the unit of change?

Run Time

Page 12: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Ontology

Collaborative Process

Flow Process

Core Process

Core Entity

Core Utility

External(Inter-Enterprise)

Internal(Intra-Enterprise)

Scope Services

Collaborative Process

Flow Process

Page 13: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Federation Example

Contract

Negotiation

Provision Customer

Fulfil Order

Fulfil Order

Order

Manager

Customer Address Book

Fulfil Order

Page 14: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Business Traceability

Application Layer

Business Layer

Service Automation Unit

BusinessService

BusinessProcess

BusinessService

BusinessService

SoftwareService

SoftwareService

SoftwareService

Page 15: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Anti-Pattern and Pattern for Service Design

C R U D

o Retrieve price o Generate lists o Display search results o Build recommendations o Add item to carto Manage inventory o Generate order reports o Submit refunds o . . .

Page 16: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Loose Coupling Design Characteristics

Attribute

Generalization

Characteristic

The offered business service is designed in such a manner that many consumers can use it, potentially in many different circumstances

Measure

Stability

Implementation Dependency

Dependencies on other components or services are minimized.

The offered service implementation is highly independent.

Horizon of change is minimized

Independence

Usage and Collaboration Dependency

Mandatory dependencies on other components and services by the consumer are minimized. For example a Flight Reservation service that forces you to also use a specific Car Reservation service, is not loosely coupled in the business sense. Though that dependency could be the result of poor service design, or purely a business decision, either way flexibility for the service consumer is constrained.

Flexibility

Semantics and

Rules

Conformance (with eco system, sector, industry, de facto or de jure standards)

Uses de facto or industry standard semantics and rules

Applicability

Contract based API

Provider and consumer obligations are formally declared in a contract specification model

Understandability

Upgrade policy Upgrade policy is an integral part of the component or service design and contract

Upgradeability

Page 17: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Delivering the Agile Architecture

Legacy

Portfolio

Proposed

Design

Select decoupling patterns

Coupling evaluation

Coupling assessment

This evaluates the prevailing

coupling in terms of a

given set of adaptability

requirements

This is a model of the As-Is or To-Be, showing the types and degrees of coupling

Coupling

Map

Coupling

Audit

Design for Adaptability

Requirements for Adaptability

Page 18: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Generalization

Co

ns

um

er

Pro

vid

er

ContextCustomer

SupplierAgent

ContextPlatinum

SilverBronze

Gold

Service DifferencesData

Quality Technical

Quality

Security

Access

Resource

Usage

Control Differences

Price

Paid

Transaction

Type Connection

TypeSecurity Level

Page 19: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Manageability

datastore

datastore

datastore

What is Going On (WIGO)

policy-makingsense-making

decision-making

Page 20: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Technology

Page 21: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Development Platform

Business Service A

Platform 1 Platform 2

Business Service B

Business Service Blueprint

Platform 2

BlueprintGlue 1 Glue 2

Platform 1

Blueprint

Virtual Platform Blueprint

Common Virtual Platform

Mapping / Transformation

Page 22: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Deployed Layer

Dependency Horizon

Service Deployment

Application Layer

Business Layer

Service Automation Unit

BusinessProcess

Service Deployment

Unit

Lifecycle

Meta

Data

BusinessService

Software Service

Page 23: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

ServiceService

Resource Business Element

0..*

ServiceBusiness Element

Delivery Business Element

Service Meta Model (Outline)

SoftwareAutomation

Unit

DeployedIntegrity

Unit

Service

Order

Service

Place New

Order

Orders

Capability

Orders

Capability

Page 24: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Web Services Management Pipeline

Identity

Authentication

Encryption

Identity

Authentication

Encryption

Billing

Royalties

Access control

Billing

Royalties

Access control

State

Recovery

Queuing

State

Recovery

Queuing

Timestamp

Statistics

Performance

Timestamp

Statistics

Performance

Transform service, request

Transform service, request

Monitoring

SLAAccessControl Logging

XMLFirewall

Transform

Intrusion

Attack

Intrusion

Attack

Accounting

SecurityAggregate

Composite

Aggregate or Composite services

Aggregate or Composite services

ServiceImplementations

OtherWeb

Services

Switch Service

Switch Implementation

Switch Service

Switch Implementation

Physical Connection

Physical Connection

Connector

Route

Security Monitoring Broker

StateMngmt

Prioritization Prioritization

WS-Security WS-AddressingWS-Distributed Management

Page 25: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Lifecycle Process

Page 26: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Service Lifecycle

Service Provision

Publish

Discover Consume

Version

Service Implementation

Service Consumption

ExecuteDeploy

Solution Implementation

Design

Certify

Analysis

Page 27: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Information Exchange

Service Provision

Publish

Discover Consume

Version

Service Consumption

ExecuteDeploy

Design

Certify

Analysis

Requirements

Models

Software

Network

Classification

Specification

Provider

Location

Precise Specification

CommercialSLA

Certificates

References

Security Policy

SLA Compliance

Billing

Consumers

Notifications

Specification

Page 28: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Governance in Service Lifecycle

Service Provision

Publish

Discover Consume

Version

Service Implementation

Service Consumption

ExecuteDeploy

Solution Implementation

Design

Certify

Analysis

Map to business ownership and usage

Requirements

for adaptability

Appropriate

Generalization

Requirements

Models Replaceability and Upgradeability

Usage profiling and authentication

Business and technical performance monitoring

Virtual resource management

Fitness for purpose

Page 29: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Web Service Standards Support

Service Provision

Publish

Discover Consume

Version

Service Consumption

ExecuteDeploy

Design

Certify

Analysis

UDDI tModel

UDDI

WSDL

BPEL

UDDI

WSIL

WSDM

UDDI Subscriptions

WSDL

Page 30: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Mainstream

SOAP

WSDL

UDDI

Specification

SOAP MTOM

WS-Addressing

WS-CAF

WS-Choreography

WSDM

WS-Eventing

WS-Federation

WS-IL

WS-Provisioning

WS-Reliable Messaging

WS-ReliableMessaging

Experimentation

ASAP

BPEL

WS-Coordination

WS-Policy

Early Adoption

WS-Security

WS-RP

Protocol Adoption

Page 31: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Architecture Maturity

Loose coupled applications

delivering better EAITight coupled components

Loose coupled/replaceable business services and components

Managed, dynamic deployment and

replacement

Page 32: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

CBDI Adoption Roadmap

Early Learning Integration Reengineering Maturity

Standalone

WS Projects

Architected

Shared

Measured ManagedService

Deployments

Information Access

Specific function

Core BusinessCapability

Business Product

Business Collab’n

Domain Standard

Service Perspective

Short term ROI

Experimentation

Portfolio

Rationalization

Business

Reengineering

Industry/

Ecosystem

Drivers

Opportunistic,

Narrow

Many internal

Few external

Many external

Supply chain

Virtual BusinessCollaborations

Momentum Extended Momentum

Reengineered Automated,

Resource

Virtualization

Service

Process

Page 33: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

Summary

Architecture of services AND components: Defined ontology and meta model Encapsulation and virtualization Engineered adaptability

SOA Relevant Process: Business driven Separation of concerns Continuous delivery Progressive service enabling of portfolio Managed response and efficiency Defined governance structure

Page 34: Insight for Web Services & Software Component Practice  Emerging Best Practices in Service Oriented Architecture David Sprott

© 2004 CBDI Forum Ltd

www.cbdiforum.com