so a basics

Upload: kranthi-juvva

Post on 14-Apr-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/2/2019 So a Basics

    1/21

    SOA BasicsSOA Basics

  • 8/2/2019 So a Basics

    2/21

    2

    Topics

    Quick introduction to SOA

    Composite applications

    Services and SOA

  • 8/2/2019 So a Basics

    3/21

    Quick IntroductionQuick Introductionto SOAto SOA

  • 8/2/2019 So a Basics

    4/21

    4

    Pre-SOA Scenario

    CustomerData

    CustomerData

    Balance

    Check

    CreditCheck

    FraudDetection

    PartnerCredit

    PartnerCreditData

    Balance

    Check

    CreditCheck

    InterestCalc

    Credit Card Mortgage

    Back-End

    Back-End

  • 8/2/2019 So a Basics

    5/21

    5

    SOA-Enabled Scenario

    Reusable Services

    Credit Card Mortgage

    Partner Credit Data

    CustomerData Service

    AccessService

    CreditCheck

    FraudDetection

    Customer Data

    PaymentManagement

    Service

    TradeExecution

    Service

    Internet

    Bill PayAuto

    Loans StocksMutualFunds

    IncreasedAgility

    Interest

    Calc

    BalanceCheck

    Back-End System Back-End System

    UnifiedRole-Based

    ViewReusableBusiness

    Components

  • 8/2/2019 So a Basics

    6/21

    6

    SOA Layers

    Shared Network-based LayeredServices

    Process (Orchestration) Layer

    Access Layer

    Service Layer

    Resource Layer

  • 8/2/2019 So a Basics

    7/217

    Benefits of SOA

    Flexible (Agile) IT

    > Adaptable to changing business needs

    Faster time to market

    > Reuse existing code, minimize new development

    Business and process-driven

    > New business opportunities

    Greater ROI

    > Leverage existing IT asset

  • 8/2/2019 So a Basics

    8/218

    Service Oriented Architecture (SOA)

    An architectural principle for structuringsystems into coarse-grained services

    Technology-neutral best practice

    Emphasizes the loose coupling of services

    New services are created from existingones

    in a synergistic fashion

    Strong service definitions are critical

    Services can be re-composed when business

    requirements change

  • 8/2/2019 So a Basics

    9/21

    Composite ApplicationsComposite Applications

  • 8/2/2019 So a Basics

    10/2110

    Applications

    Developers need to build end-to-endapplications

    > Front-end user interfaces

    > Middle-tier business logic> Back-end resources

    With the right approach, developers can...

    > Reuse existing parts> Build new parts

    > Glue old and new parts together

    With the wrong approach, developersmust...

  • 8/2/2019 So a Basics

    11/2111

    Applications

    Real-world applications are...

    > ...not Web applications

    > ...not Java EE applications

    > ...not Swing forms> ...not Web services

    > ...not BPEL processes

    > ...not SOA

    > ...not JBI

    > ...not RDBMSs

    > ...not (your favorite technology)

    Real-world applications use many or all of

  • 8/2/2019 So a Basics

    12/2112

    Traditional Application Development

    Point technologies, products, and APIs> For example: EJB, Spring, Hibernate, JSF, Servlets,

    Struts, etc.

    Lots of glue written by developers> Requires a great deal of expertise & time

    > Inflexible

  • 8/2/2019 So a Basics

    13/2113

    Composite Applications

    A way to compose applications fromreusable parts

    Composite applications employ SOA

    principles> Features exposed as Web services

    > Standards-based interaction between services

    > Are themselves composable

  • 8/2/2019 So a Basics

    14/21

    Services and SOAServices and SOA

  • 8/2/2019 So a Basics

    15/2115

    What Are Services?

    Black-box components with well-definedinterfaces

    > Performs some arbitrary function

    > Can be implemented in myriad ways

    Accessed using XML message exchanges

    > Using well-known message exchange patterns

    (MEPs) Metadata in the form of WSDL describes...

    > Abstract interfaces

    > Concrete endpoints

  • 8/2/2019 So a Basics

    16/2116

    What Can Services Do?

    Perform business logic

    Transform data

    Route messages

    Query databases

    Apply business policy

    Handle business exceptions Prepare information for use by a user

    interface

    Orchestrate conversations between multiple

  • 8/2/2019 So a Basics

    17/2117

    How Are Services Implemented?

    Enterprise JavaBeans (EJB) technology

    BPEL

    XSLT

    SQL

    Business rules

    Mainframe transaction EDI transform

    Humans (yes, really!)

  • 8/2/2019 So a Basics

    18/2118

    Example: Purchase Service

    BidRequest

    BidRequest

    Bid

    Supplier

    LowestBid

    Accept/

    Reject

    ShipNotice

    Buyer PurchaseService

    Accept/

    Reject

    ShipNotice

  • 8/2/2019 So a Basics

    19/2119

    Purchase Service Functions

    BuyerEndpoint

    SupplierEndpoint

    BuyerConversation SupplierConversation

    Transaction Fees

    SupplierSelection

    Buyer Credit

    Supplier Routing

    ProductConversion

  • 8/2/2019 So a Basics

    20/2120

    Purchase Service Functions

    BuyerEndpoint

    SupplierEndpoint

    BuyerConversation SupplierConversation

    Transaction Fees

    SupplierSelection

    Buyer Credit

    Supplier Routing

    ProductConversion

    WSDL/Soap

    XQuery

    EJB

    BPELBPEL

    WSDL/Soap

    Rule

    RoutingTable

    XSLT

  • 8/2/2019 So a Basics

    21/21

    SOA BasicsSOA Basics