+ All Categories
Home > Documents > Service Oriented Arch

Service Oriented Arch

Date post: 07-Apr-2018
Category:
Upload: raghavendra-prasad
View: 215 times
Download: 0 times
Share this document with a friend

of 47

Transcript
  • 8/6/2019 Service Oriented Arch

    1/47

    Technical Track Session

    Service-Oriented

    Architecture

    Terry Woods

  • 8/6/2019 Service Oriented Arch

    2/47

    2

    Agenda A little history

    What is Service-OrientedArchitecture?

    How do you build a Service-OrientedArchitecture Solution?

    What is an Enterprise Service Bus?

    Summary

  • 8/6/2019 Service Oriented Arch

    3/47

    Technical Track Session

    A Little History

  • 8/6/2019 Service Oriented Arch

    4/47

    4

    In the Beginning

    Computers were the domain of

    scientists for scientists Business and Government

    discovered the value of computing

    Business requirements needed to

    be captured and programmed

  • 8/6/2019 Service Oriented Arch

    5/47

    5

    Some Past Attempts COBOL It was designed to be business-problem

    oriented, machine-independent, and capable of continuouschange and development.

    SQL The SQL "language" allows anyone with acomputer terminal to access and use relational databases.Originally thought to be an end-user tool.

    SAD Structured Analysis and Design

    (Yourdon/DeMarco) IE Information engineering (design by pictures) James

    Martin

    OOAD Object-Oriented Analysis and Design

  • 8/6/2019 Service Oriented Arch

    6/47

    6

    Revolution

    Revolution COBOL

    Basic programming

    language C programming

    language

    SQL

    Structured analyses

    and design Electronic data

    exchange

    Evolution Web Services

    Information Engineering

    CASE

    C++

    Java

    Object-Oriented Analysis andDesign

    HTML

    Common Record (XML)

    Ecosystem Standards

    SOA

  • 8/6/2019 Service Oriented Arch

    7/47

    Technical Track SessionWhat is Service-Oriented

    Architecture?

  • 8/6/2019 Service Oriented Arch

    8/47

    8

    What is Service-Oriented

    Architecture?

    Service-Oriented Architecture (SOA)

    is an architectural style.A

    pplicationsbuilt using an SOA style deliver

    functionality as services that can be

    used or reused when building

    applications or integrating within the

    enterprise or trading partners.

  • 8/6/2019 Service Oriented Arch

    9/47

  • 8/6/2019 Service Oriented Arch

    10/47

    0

    What is a Service?

    A service is a reusable component that

    can be used as a building block to formlarger, more complex business-

    application functionality.

    Aservice may be as simple as get me

    some person data, or as complex as

    process a disbursement.

  • 8/6/2019 Service Oriented Arch

    11/47

    11

    What is a Service?

    A service provides a discrete

    business function that operates ondata. Its job is to ensure that thebusiness functionality is appliedconsistently, returns predictableresults, and operates within thequality of service required.

  • 8/6/2019 Service Oriented Arch

    12/47

    12

    What is a Service?

    How the service is implemented, and

    how a user of the service accesses it,are limited only by the SOA

    infrastructure choices of the enterprise.

    From a theory point of view, it reallydoesnt matter how a service is

    implemented.

  • 8/6/2019 Service Oriented Arch

    13/47

    13

    Characteristics of a Service

    Supports open standards for

    integration:A

    lthough proprietaryintegration mechanisms may be offered

    by the SOA infrastructure, SOAs

    should be based on open standards.

    Open standards ensure the broadest

    integration compatibility opportunities.

  • 8/6/2019 Service Oriented Arch

    14/47

    14

    Characteristics of a Service

    Loose coupling: The consumer of the

    service is required to provide only the

    stated data on the interface definition,

    and to expect only the specified results

    on the interface definition. The service

    is capable of handling all processing

    (including exception processing).

  • 8/6/2019 Service Oriented Arch

    15/47

    15

    Characteristics of a Service

    Stateless: The service does notmaintain state between invocations. It

    takes the parameters provided,performs the defined function, andreturns the expected result. If a

    transaction is involved, the transactionis committed and the data is saved tothe database.

  • 8/6/2019 Service Oriented Arch

    16/47

    16

    Characteristics of a Service

    Location agnostic: Users of theservice do not need to worry aboutthe implementation details foraccessing the service. The SOAinfrastructure will providestandardized access mechanismswith service-level agreements.

  • 8/6/2019 Service Oriented Arch

    17/47

    17

    Legacy Business ProcessBusiness Process 1

    Business Process 2

    Business Process 3

  • 8/6/2019 Service Oriented Arch

    18/47

    18

    ArchitecturalC

    hoke Point Monolithic

    Extremely complex

    Very tightly coupled

    Difficult to find clean integration points

    Lack of standards makes it difficult to

    integrate

    Rigid architecture makes even smallchanges complex and costly

  • 8/6/2019 Service Oriented Arch

    19/47

    19

    SOA Business ProcessBusiness Process

    Shared Service

    Information Framework

    Supplier

  • 8/6/2019 Service Oriented Arch

    20/47

    Technical Track Session

    How Do You Build a

    Service-OrientedArchitecture Solution?

  • 8/6/2019 Service Oriented Arch

    21/47

    21

    ITInfrastructure is an Ecosystem

    COBOL

    C++

    Java

    J2EE

    Networks

    TCP/IP

    Web Service

    Mid-Tier Servers

    .NET

    Messaging

    HTML

    Operating Systems

    CICS

    Routers

    Databases

    Mainframes

  • 8/6/2019 Service Oriented Arch

    22/47

    22

    Managing the Ecosystem

    Technology Management

    Product duplication

    Standards

    Product/Vendor lock-in

    Support skill sets

    Version Management

    ManagedEvergreening

    Limited versions in

    production

  • 8/6/2019 Service Oriented Arch

    23/47

    23

    LegacyIntegration

  • 8/6/2019 Service Oriented Arch

    24/47

    24

    SOAIntegration

    SOA Architecture

  • 8/6/2019 Service Oriented Arch

    25/47

    25

    Integration Stack

    Industry Standards

    LanguageStandards

    Custom APIs

    Native Interfaces

    Ub iq ity

    r ri t ry

  • 8/6/2019 Service Oriented Arch

    26/47

    Technical Track Session

    Enterprise Service Bus

  • 8/6/2019 Service Oriented Arch

    27/47

  • 8/6/2019 Service Oriented Arch

    28/47

    28

    KeyC

    haracteristics of an ESB Streamlines development

    Supports multiple binding strategies

    Performs data transformation

    Intelligent routing

    Real time monitoring Exception handling

    Service security

  • 8/6/2019 Service Oriented Arch

    29/47

  • 8/6/2019 Service Oriented Arch

    30/47

    30

    EAI

    Limitations

    An EAI can be a tightly coupled

    solution An EAI can be location-specific

    An EAI can be based on

    proprietary transport technology

  • 8/6/2019 Service Oriented Arch

    31/47

    31

    Lets Walk Through the ESB Get Person Data

    Use Standard Student IdentificationMethod (SSIM) identifiers to find theperson

    Return the Person Data

    This is a fictional-use case, and is only intended toillustrate how an ESB would provide a service.

  • 8/6/2019 Service Oriented Arch

    32/47

    32

    The ESB Boundaries

    The ESB (in its simplest form) is

    responsible for getting a message from

    point A to point B.

    Enterprise Service Bus

    Point A Point B

    Message

  • 8/6/2019 Service Oriented Arch

    33/47

    33

    Get the

    Message on the Bus

    A binding component speaks the

    services protocol, which happens

    to be SOAP over JMS.

    Enterprise Service Bus

    Point B

    Message

    Get Person Data

    Client

    Request

    Get Person Data

    BC

  • 8/6/2019 Service Oriented Arch

    34/47

    34

    Perform the PersonR

    ead

    The request is now routed to the

    Get Person Data Service, whichwill perform the business logic.

    Enterprise Service Bus

    Message

    Get Person

    Data

    Request

    Get Person Data

    Client

    Request

    Get Person Data

    BC

    Get Person Data

    BC

  • 8/6/2019 Service Oriented Arch

    35/47

    35

    Do the SSIM

    Lookup

    A call is made to the SSIM service to perform

    a lookup of the Student Identifier (SID). The

    SSIM service lives inside the bus.Note: The SSIM binding components are not shown so the diagram can remain simple.

    Enterprise Service Bus

    SSIM Lookup

    Message

    Get Person

    Data

    Request

    Get Person Data

    Client

    Request

    Get Person Data

    BC

    Get Person Data

    BC

    Request

  • 8/6/2019 Service Oriented Arch

    36/47

    36

    Return the Person Data

    The process is reversed, returningthe response to the requester.

    Enterprise Service Bus

    Response

    MessageResponse

    SSIM Lookup

    Message

    Get Person

    Data

    Request

    Get Person Data

    Client

    Request

    Get Person Data

    BC

    Get Person Data

    BC

    Request

    Response

  • 8/6/2019 Service Oriented Arch

    37/47

    37

    ESB Summary

    Loose Coupling

    Location Transparency Transport Neutral

  • 8/6/2019 Service Oriented Arch

    38/47

    38

    Defining theM

    essage Web Services Description Language Open Standard for describing

    Interfaces to Services

    (http://www.w3.org/TR/wsdl) Characteristics

    Describes data expected to be sent andreceived

    Describes what the service can do Describes how to reach the service

    WSDL description is an XMLdocument

    Services

    i di s

    rt Ty es

    O er ti s

    ess es

  • 8/6/2019 Service Oriented Arch

    39/47

    39

    Message-Exchange Patterns

    One-way. The endpoint receives a message.

    Request-response. The endpoint receives a

    message, and sends a correlated message.

    Solicit-response. The endpoint sends a

    message, and receives a correlated message.

    Notification. The endpoint sends a

    message.

  • 8/6/2019 Service Oriented Arch

    40/47

    Technical Track Session

    Building a Compound

    Application

  • 8/6/2019 Service Oriented Arch

    41/47

    41

    TheI

    ngredientsSer ice Definition

    WSDL XSD

    Ser ice Implementation

    Ja aS

    essionBean

  • 8/6/2019 Service Oriented Arch

    42/47

  • 8/6/2019 Service Oriented Arch

    43/47

    43

    BPEL BPELPr cessIn

    J vIn

    O

    t

    EJBIn

    O

    t

    ess eIn

    O

    t

    Other

    In

    O

    tO

    t

  • 8/6/2019 Service Oriented Arch

    44/47

    44

    What BPEL does BPEL binds services together to form

    larger complex business services

    Control Flow (branch, loop, parallel)

    Asynchronous correlation

    Transaction support, Units of Work Compensation

  • 8/6/2019 Service Oriented Arch

    45/47

    45

    Sample ESB

    Custom Services

    Transformation Services

    Orchestration

    Routing

    Application Server

    BPEL

    Service

    1

    5

    4 23

    Trnsfrm

    Service

    Gatewa

    yService

    Routing

    Service

    J2EE li ti r r

    W b

    Se r

    let

    rtlet

    JMS

    EJ

    MD

    SSB

    JC

    C

    ustomService

  • 8/6/2019 Service Oriented Arch

    46/47

    46

    Summary

    What is Service-Oriented

    Architecture?

    How do you build a Service-

    Oriented Architecture solution?

    What is an Enterprise Service Bus?

  • 8/6/2019 Service Oriented Arch

    47/47

    47

    We appreciate your feedback and

    comments. We can be reached at:

    Phone: 2023773023

    Email: [email protected]

    C

    ontactI

    nformation


Recommended