Top Banner
© 2008 Intergraph Corporation Principles of Service Oriented Principles of Service Oriented Architecture Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure [email protected]
36

© 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure [email protected].

Mar 27, 2015

Download

Documents

Austin Bowen
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: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

© 2008 Intergraph Corporation

Principles of Service Oriented Principles of Service Oriented ArchitectureArchitecture

Mark BaileySenior System ConsultantSecurity, Government, & [email protected]

Page 2: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 2© 2008, Intergraph Corporation

AgendaAgenda

Motivation for Service Oriented Architecture (SOA)

SOA Defined

SOA Principles

Applying SOA

Page 3: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 3© 2008, Intergraph Corporation

Current EnvironmentCurrent Environment

Page 4: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 4© 2008, Intergraph Corporation

Application Centric Application Centric

Page 5: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 5© 2008, Intergraph Corporation

Application CentricApplication Centric

Application

ApplicationFinance

DistributionManufacturing

Supply

Narrow Consumers Limited Business Processes

Overlapped resourcesOverlapped providers

Business scope

Application

Integration

Architecture

Business functionality is duplicated in each application that requires it.

EAI ‘leverage’ application silos with the drawback of data and function redundancy.

bound to EAI vendor

Redundancy

Page 6: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 6© 2008, Intergraph Corporation

Goal - Service CentricGoal - Service Centric

Page 7: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 7© 2008, Intergraph Corporation

Service Architecture

Service

Service

Service

ServiceFinance

DistributionManufacturing

Supply

Service virtualizes how that capability is performed, and where and by whom the resources are provided, enabling multiple providers and consumers to participate together in shared business activities.

Multiple Service ConsumersMultiple Business Processes

Multiple Discrete ResourcesMultiple Service Providers

source:TietoEnator AB, Kurts Bilder

Business scope

SOA structures the business and its systems as a set of capabilities that are offeredas Services, organized into a Service Architecture

Shared

Services

Service CentricService Centric

Page 8: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 8© 2008, Intergraph Corporation

Before SOA – After SOABefore SOA – After SOA

source:IBM

Page 9: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 9© 2008, Intergraph Corporation

Why SOA?Why SOA?To enable Flexible, Federated Business ProcessesTo enable Flexible, Federated Business Processes

Enabling a virtual federation ofparticipants to collaborate in anend-to-end business process

Enabling alternativeimplementations

Enabling reuse ofServices

Enabling virtualization of business resources Enabling aggregation from multipleproviders

Identification

Ticket Sales

Ticket Collection

InventoryLogistics

ManufacturingAvailability

Service

Service

Service

Service Service

Service

ServiceService Service

Service

Ordering

source:TietoEnator AB, Kurts Bilder

Page 10: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 10© 2008, Intergraph Corporation

Why SOA? To enable Business Process OptimizationWhy SOA? To enable Business Process Optimization and the Real Time Enterprise (RTE) and the Real Time Enterprise (RTE)

Seamless End to End Process

Internal Systems

SOA Pattern: Standardized Service provided by multiple suppliers

Service from Multiple Suppliers

SOA Patterns: Single, Multi-ChannelService for consistency

BPM Expressed in terms of ServicesProvided/Consumed

Enterprise

source:TietoEnator AB, Kurts Bilder

Smart Clients

Stores POSMobile

3rd Party Agents

Portal

Service to Customers

Page 11: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 11© 2008, Intergraph Corporation

Why SOA? Why SOA? Enable Structural ImprovementEnable Structural Improvement

ERP X Process Z Partner A Process Y

Service

Standardizing capabilities Information Consistency

Policy Consistencye.g. Single Customer

Details Service

Consolidation/Selection process

Reducing impactof change

Encapsulatingimplementation

complexity

ERP ZCRM

System 2CRM

System 1Product System

Policy Rationalization and Evolution

Resource Virtualization

e.g. Multiple Sources of Customer Details

Page 12: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 12© 2008, Intergraph Corporation

SOA DefinedSOA Defined

SOA is a software architecture model

– in which business functionality are logically grouped and encapsulated into • self contained,• distinct and reusable units

called services that• represent a high level business concept • can be distributed over a network • can be reused to create new business applications

• contain contract with specification of the purpose, functionality, interfaces (coarse grained), constraints, usage

... of the business functionality

Services are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts.

Services can be independently evolved, moved, scaled even in runtime.

Services are autonomous, discrete and reusable units of business functionality exposing its capabilities in a form of contracts.

Services can be independently evolved, moved, scaled even in runtime.

Page 13: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 13© 2008, Intergraph Corporation

What is Service Architecture?What is Service Architecture?

• A collection of services

• classified into types

• arranged into layers

• Governed by architectural patterns and policies

services

identifica

tion

granularity

dependency

type typetype

source:TietoEnator AB, Kurts Bilder

Page 14: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 14© 2008, Intergraph Corporation

Big (outer) vs. Little (inner) SOABig (outer) vs. Little (inner) SOA

Page 15: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 15© 2008, Intergraph Corporation

SOA is an evolutionary stepSOA is an evolutionary step

for architecture

Page 16: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 16© 2008, Intergraph Corporation

SOA is an evolutionary stepSOA is an evolutionary step

in reusability and communication

Page 17: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 17© 2008, Intergraph Corporation

SOA is an evolutionary stepSOA is an evolutionary step

Project-ware SOAEAI

in distributed communications

source:Sam Gentile

Page 18: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 18© 2008, Intergraph Corporation

Service Architecture Organized by LayersService Architecture Organized by Layers

Reasons for Layering

1. Flexible composition.

2. Reuse.

3. Functional standardization in lower levels

4. Customization in higher layers

5. Separation of Concerns.

6. Policies may vary by Layer

Example Layers

Presentation& workflow

Composed Services

Basic Services

Underlying API

according to:TietoEnator AB, Kurts Bilder

Page 19: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 19© 2008, Intergraph Corporation

Major service typesMajor service types

Basic Services:

– Data-centric and logic-centric services

– Encapsulate data behavior and data model and ensures data consistency (only on one backend).

– Basic services are stateless services with high degree of reusability.

– Represent fundamental SOA maturity level and usually are build on top existing legacy API (underlying services)

Composed Services :

– expose harmonized access to inconsistent basic services technology (gateways, adapters, façades, and functionality-adding services).

– Encapsulate business specific workflows or orchestrated services.

Page 20: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 20© 2008, Intergraph Corporation

Service TypesService Types

Foundation Service Blocks

Core APIs

Terra

Share

G/T

echI/C

AD

InService Other

Servic

e

Infra

struc

ture

SOA Management & Security service mediation, routing, trust enablement. ESB, Service Registry

Multi channel applications: Mobile, Smart, Thin, Thick clients, Portals.

Business centric services, orchestrated workflows. Intermediate services (gateways, facades )

Data centric and logic centric consistent services. Highly reusable, stateless servers

BusinessCapabilities

Page 21: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 21© 2008, Intergraph Corporation

SOA PrinciplesSOA Principles

Standardized Service Contracts

Loose Coupling

Abstraction

Reusability

Autonomy

Statelessness

Discoverability

Composability

Page 22: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 22© 2008, Intergraph Corporation

Standardized Service ContractsStandardized Service Contracts

“Services within the same service inventory are in compliance with the same contract design standards."

Services use service contract to

– Express their purpose

– Express their capabilities

Use formal, standardized service contracts

Focus on the areas of

– Functional expression

– Data representation

– Policy

Source: Thomas Erl

Page 23: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 23© 2008, Intergraph Corporation

Loose CouplingLoose Coupling

“Service contracts impose low consumer coupling requirements and are themselves decoupled from their surrounding environment."

Create specific types of relationships within and outside of service boundaries with a constant emphasis on reducing (“loosening”) dependencies between

– Service contract

– Service implementation

– Service consumers

Source: Thomas Erl

Page 24: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 24© 2008, Intergraph Corporation

AbstractionAbstraction

“Service contracts only contain essential information and information about services is limited to what is published in service contracts”

Avoid the proliferation of unnecessary service information, meta-data.

Hide as much of the underlying details of a service as possible.

– Enables and preserves the loosely coupled relationships

– Plays a significant role in the positioning and design of service compositions

Source: Thomas Erl

Page 25: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 25© 2008, Intergraph Corporation

ReusabilityReusability

“Services contain and express agnostic logic and can be positioned as reusable enterprise resources."

Reusable services have the following characteristics:

– Defined by an agnostic functional context

– Logic is highly generic

– Has a generic and extensible contract

– Can be accessed concurrently

Source: Thomas Erl

Page 26: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 26© 2008, Intergraph Corporation

AutonomyAutonomy

"Services exercise a high level of control over their underlying runtime execution environment."

Represents the ability of a service to carry out its logic independently of outside influences

To achieve this, services must be more isolated

Primary benefits

– Increased reliability

– Behavioral predictability

Source: Thomas Erl

Page 27: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 27© 2008, Intergraph Corporation

StatelessnessStatelessness

"Services minimize resource consumption by deferring the management of state information when necessary."

Incorporate state management deferral extensions within a service design

Goals

– Increase service scalability

– Support design of agnostic logic and improve service reuse

Source: Thomas Erl

Page 28: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 28© 2008, Intergraph Corporation

DiscoverabilityDiscoverability

"Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted."

Service contracts contain appropriate meta data for discovery which also communicates purpose and capabilities to humans

Store meta data in a service registry or profile documents

Source: Thomas Erl

Page 29: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 29© 2008, Intergraph Corporation

ComposabilityComposability

"Services are effective composition participants, regardless of the size and complexity of the composition."

Ensures services are able to participate in multiple compositions to solve multiple larger problems

Related to Reusability principle

Service execution should efficient in that individual processing should be highly tuned

Flexible service contracts to allow different types of data exchange requirements for similar functions Source: Thomas Erl

Page 30: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 30© 2008, Intergraph Corporation

Applying SOA - GovernanceApplying SOA - Governance

Goal: Establish SOA organization governance (SOA Board) that governs SOA efforts and breaks down capabilities into non-overlapping services

Governance is a program that makes sure people do what is ‘right’

In conjunction with software, governance controls the development and operation of software

Page 31: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 31© 2008, Intergraph Corporation

Applying SOA - GovernanceApplying SOA - Governance

Policies – Codification of laws, regulations, corporate guidelines and best practices

– Must address all stages of the service lifecycle (technology selection, design, development practices, configuration management, release management, runtime management, etc.)

Processes– Enforce policies

– System-driven processes (code check-in, code builds, unit tests)

– Human-driven process (requests, design reviews, code reviews, threat assessment, test case review, release engineering, service registration, etc.)

Metrics– Measurements of service reuse, compliancy with policy, etc.

– Organization

– Governance program should be run by SOA Board, which should have cross-functional representatives

Page 32: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 32© 2008, Intergraph Corporation

Business service model

ServiceDesigners

Foundation Service Blocks

Core APIs

G/T

echI/C

AD

InService Other

Service specificationmodel

EnterpriseArchitects

SOABoard P

atternsM

odelsStandardsPolicy

Service implementation and deployment

model

Software and IT Architects

BusinessCapabilities

Applying SOA – Applying SOA – GovernanceGovernance

Page 33: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 33© 2008, Intergraph Corporation

Business functionality has to be made available as services. Service contracts must be fixed

Implemented services must be designed with reuse in mind. This creates some overhead.

Potential service users must be involved in the design process and will have influence on the service design

Applying SOA - ChallengesApplying SOA - Challenges

Service Orientation

Reuse

Sharing of Responsibilities

Increased complexity!

Page 34: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 34© 2008, Intergraph Corporation

(Source: Enterprise SOA: Service Oriented Architecture Best Practices by Dirk Krafzig, Karl Banke, and Dirk Slama, Prentice Hall 2004)

Applying SOA – Renovation RoadmapApplying SOA – Renovation Roadmap

Page 35: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

Page 35© 2008, Intergraph Corporation

Conclusion and SummaryConclusion and Summary

If done correct, SOA is “not just another architectural fad”

SOA seeks to bridge the gap between business and technology promoting business agility (its all about managing change)

SOA

– Is complex

– Requires governance

– Requires executive management buy-in

– Requires commitment with resources (people and $$)

Page 36: © 2008 Intergraph Corporation Principles of Service Oriented Architecture Mark Bailey Senior System Consultant Security, Government, & Infrastructure mark.bailey@intergraph.com.

© 2008 Intergraph Corporation

Principles of Service Oriented Principles of Service Oriented ArchitectureArchitecture

Mark BaileySenior System ConsultantSecurity, Government, & [email protected]