soa_ibm_1

download soa_ibm_1

of 70

Transcript of soa_ibm_1

  • 8/11/2019 soa_ibm_1

    1/70

    Service-oriented modeling and architecture

    How to identify, specify, and realize services

    for your SOA

    Level: IntermediateAli Arsanjani, Ph.D.([email protected]), Chief

    Architect, !A and "eb services Center of #$cellence,

    I%&

    ' ov *''+

    his article discusses the hi-hli-hts of serviceoriented modelin- and

    architecture/ the 0e1 activities that 1ou need for the anal1sis and desi-n

    re2uired to build a ervice!riented Architecture (!A). he author stressesthe im3ortance of addressin- the techni2ues re2uired for the identification,

    s3ecification and reali4ation of services, their flows and composition, as 5ell

    as the enter3risescale componentsneeded to reali4e and ensure the 2ualit1

    of services re2uired of a !A.

    Introduction

    here has been a lot of bu44 and h13e some factual, some not so 5ell

    founded surroundin- the o33ortunities 3resented b1 erviceoriented

    Architectures (SOA) and its implementation as Web services. Anal1sts

    have 3redicted, 3undits have 3rofessed, 3rofessors have lectured, com3anieshave scurried to sell 5hat the1 had, as !A 3roducts often missin- the

    3oint that !A is not a 3roduct. It6s about brid-in- the -a3 bet5een business

    and I throu-h a set of businessali-ned I services usin- a set of desi-n

    3rinci3les, 3atterns, and techni2ues.7Detrecentl1 said, 89artner 3redicts that b1 *'', more than ;' 3ercent of

    enter3rises 5ill use !A as a 8-uidin- 3rinci3le8 5hen creatin- mission

    critical a33lications and 3rocesses.8

    A hu-e demand e$ists for the develo3ment and im3lementation of !As. oif !A is not just about the 3roducts and standards that hel3 reali4e it, for

    e$am3le throu-h "eb services, then 5hat additional elements do 1ou need

    to reali4e a !A< Service-oriented modelingre2uires additional activities and

    artifacts that are not found in traditional object-oriented analysis anddesin (OOA!)"he article =#lements of erviceoriented Anal1sis and

    Desi-n8 describes an initial set of reasons 5h1 1ou need more than !!AD. It

    also describes ho5 business 3rocess mana-ement or enter3rise architecture

    (#A) and !!AD are inade2uate means of conductin- anal1sis and desi-n.

    Also, in the I%& >edboo0 entitled =Patterns: ervice!riented Architectureand "eb ervices8, I illustrate the major activities of this serviceoriented

    modelin- a33roach.

    ?o5ever, additional im3ortant considerations e$ist that 1ou need to ta0e intoaccount. or one thin-, current !!AD methods do not address the three 0e1

    elements of a !A: services, flows, and componentsreali4in- services. ou

    also need to be able to e$3licitl1 address the techni2ues and 3rocesses

    re2uired for the identification, s3ecification and reali4ation of services, their

    Document o3tions

    http://www.ibm.com/developerworks/library/ws-soa-design1/#author%23authormailto:[email protected]?subject=Service-oriented%20modeling%20and%20architecturehttp://www.zdnet.com/http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.ibm.com/developerworks/http://www.ibm.com/developerworks/library/ws-soa-design1/#author%23authormailto:[email protected]?subject=Service-oriented%20modeling%20and%20architecturehttp://www.zdnet.com/http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htm
  • 8/11/2019 soa_ibm_1

    2/70

    flo5s and com3osition, as 5ell as the enter3risescale com3onents needed to

    reali4e and ensure the 2ualit1 of services re2uired.econd, a 3aradi-m shift needs to occur, in order to a33reciate the distinct

    re2uirements of the two #ey roles in a SOA$ t%e service provider and

    service consumer"hird, a33lications assumed to be built for one

    enter3rise or line of business must no5 as3ire to be used in a su33l1 chainand be e$3osed to business 3artners 5ho mi-ht com3ose, combine, and

    enca3sulate them into ne5 a33lications. his is the notion of the service

    ecos1stem or service valuenet.

    his is a sli-ht ste3 u3 from just 8distributed objects8. It6s about the valuecreated throu-h the net5or0 effect: for e$am3le, 5hen 3arties levera-e a

    combination of Ama4on.com 5ith 9oo-le6s search services and combine them

    5ith e%a1 services to build their o5n h1brid solutions. !r 5hen a travel

    a-enc1 reaches dee3 into an airline reservation s1stem and coordinates it5ith a rental car a-enc1 and hotel chain, u3datin- their records and sendin-

    the itinerar1 to 1our electronic or-ani4er. "hatever the a33lication, 1ou need

    much more than just -ood tools and standards to successfull1 create a !A.

    ou need some 3rescri3tive ste3s to su33ort 1our !A life c1cle/ techni2uesfor the anal1sis, desi-n, and reali4ation of services, flo5s, and com3onents.

    herefore, for an1one interested in enter3rise a33lication develo3ment, it6s

    crucial to understand the detailed ste3s involved in serviceoriented modelin-

    and architecture.%efore I describe these ste3s in detail, let6s first understand 5hat 1ou are

    aimin- to 3roduce: what is a SOA, and what does it look like?After definin-

    the notion and conce3ts behind a !A, I6ll describe the la1ers of a !A and

    ho5 1ou need to record 0e1 architectural decisions about each of those la1ersthat hel3 1ou in buildin- a blue3rint for the !A that is ri-ht for 1our 3roject,

    line of business, enter3rise5ide effort, or valuechain that 1ou are tr1in- to

    inte-rate and come u3 5ith a set of services, flo5s, and com3onents thatim3lement the !A.

    Service-OrientedArchitecture: Aconceptualmodel

    his conce3t isbased on an

    architectural

    st1le that

    defines aninteraction

    model

    bet5een three

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    3/70

    3rimar1

    3arties: theservice

    3rovider, 5ho

    3ublishes a

    servicedescri3tion

    and 3rovides

    the

    im3lementation for the

    service, a

    service

    consumer,5ho can either

    use the

    uniform

    resourceidentifier

    (B>I) for the

    service

    descri3tiondirectl1 or can

    find the

    service

    descri3tion ina service

    re-istr1 and

    bind andinvo0e theservice. he

    service bro0er

    3rovides and

    maintains theservice

    re-istr1,

    althou-h

    no5ada1s3ublic

    re-istries are

    not in vo-ue.A metamodelsho5in- these

    relationshi3s

    is de3icted in

    i-ure belo5.

    http://www.ibm.com/developerworks/library/ws-soa-design1/#figure1%23figure1http://www.ibm.com/developerworks/library/ws-soa-design1/#figure1%23figure1
  • 8/11/2019 soa_ibm_1

    4/70

    'iure $

    onceptualmodel of a

    SOA

    arc%itectural

    style

    Thearchitecturalstyle andprinciples

    he

    architecturest1le definin-

    a !A

    describes aset of 3atterns

    and -uidelines

    for creatin-

    loosely

    coupled,

    business-aligned

    servicesthat,because of the

    separation of

    concerns

    betweendescription,

    implementat

    ion, and

    bindin,

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    5/70

    3rovide

    un3recedented fle$ibilit1 in

    res3onsivenes

    s to ne5

    businessthreats and

    o33ortunities.

    A !A is an

    enter3risescale I

    architecture

    for lin0in-

    resources ondemand. In a

    !A,

    resources are

    madeavailable to

    3artici3ants in

    a value net,

    enter3rise,line of

    business

    (t13icall1

    s3annin-multi3le

    a33lications

    5ithin anenter3rise oracross

    multi3le

    enter3rises).

    It consists of aset of

    business

    ali-ned I

    services thatcollectivel1

    fulfill an

    or-ani4ation6sbusiness3rocesses and

    -oals. ou can

    choreo-ra3h

    these servicesinto com3osite

    a33lications

  • 8/11/2019 soa_ibm_1

    6/70

  • 8/11/2019 soa_ibm_1

    7/70

    'iure +$

    Attributes ofa SOA

    %usiness

    a-ilit1 is-ained b1 I

    s1stems that

    are fle$ible,

    3rimaril1 b1

    se3aration ofinterface,

    im3lementatio

    n, and bindin-(3rotocols)

    offered b1 a

    !A, allo5in-

    the deferral ofthe choice of

    whichservice

    3roviderto

    opt forat a-iven 3oint in

    time based on

    new business

    requirements,(functional

    and non

    functional (for

    e$am3le,3erformance,

    securit1,

    scalabilit1, and

    so forth)re2uirements)

    .

    ou can reuse

    the servicesacross internal

    business units

    or across the

  • 8/11/2019 soa_ibm_1

    8/70

    value chains

    amon-business

    3artners in a

    fractal

    realizationpattern.

    ractal

    reali4ation

    refers to theabilit1 of an

    architectural

    st1le to a33l1

    its 3atternsand the roles

    associated

    5ith the

    3artici3ants inits interaction

    model in a

    com3osite

    manner. oucan a33l1 it to

    one tier in an

    architecture

    and tomulti3le tiers

    across the

    enter3risearchitecture.Amon-

    3rojects, it

    can be

    bet5eenbusiness units

    and business

    3artners

    5ithin a valuechain in a

    uniform and

    conce3tuall1scalablemanner.

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    9/70

    Context

    In this article,

    I introducethe hi-hlevel

    activities of

    identification,s3ecification

    and

    reali4ation,

    and someartifacts of

    service

    oriented

    modelin-.ervice

    oriented

    modelin- is a

    serviceoriented

    anal1sis and

    desi-n

    (!AD)3rocess for

    modelin-,

    anal14in-,

    desi-nin-, and3roducin- a

    !A that

    ali-ns 5ithbusinessanal1sis,

    3rocesses,

    and -oals.

    I6ll first ta0e aloo0 at 5hat

    1ou intend to

    build, namel1

    a !A and itsla1ers. hen

    I6ll describe

    ho5 to buildthe !A b1discussin- the

    main activities

    and

    techni2uesthat 1ou need

    to create a

  • 8/11/2019 soa_ibm_1

    10/70

    !A.

    As ane$am3le, let6s

    assume that

    1ou are

    5or0in- on a3roject and

    the objective

    is to mi-rate a

    3ortion of theban0in- line of

    business,

    5hich has a

    selfserviceaccountin-

    s1stem, to a

    !A.

    In order tomi-rate to a

    !A, 1ou

    need some

    additionalelements that

    -o be1ond

    service

    modelin-.hese include:

    Ado3tio

    n andmaturit

    1

    models."here

    is 1our

    enter3ri

    se at inthe

    relative

    scale of

    maturit1 in the

    ado3tio

    n of

    !Aand

    "eb

    ervices

  • 8/11/2019 soa_ibm_1

    11/70

    #ver1

    different level

    of

    ado3tio

    n hasits o5n

    uni2ue

    needs.

    Assess

    ments.

    Do 1ouhave

    some

    3ilotsesources).

    "eb ervicesDescri3tion

    Lan-ua-e

    ("DL)

    s3ecifies abindin-, 5hich

    im3lies a

    location 5here

    the service is3rovided. !n

    the other

    hand, an #%

    3rovides alocation

    inde3endent

    mechanism

    forinte-ration.

    .evel 4$ 5oS"

    his la1er3rovides theca3abilities

    re2uired to

    monitor,

    mana-e, andmaintain o

    such as

    securit1,

    3erformance,and

    availabilit1.

    his is abac0-round3rocess

    throu-h

    senseand

    res3ondmechanisms

    and tools that

    http://www.ibm.com/developerworks/library/ws-soa-design1/#Resources%23Resourceshttp://www.ibm.com/developerworks/library/ws-soa-design1/#Resources%23Resources
  • 8/11/2019 soa_ibm_1

    41/70

    monitor the

    health of !Aa33lications,

    includin- the

    all im3ortant

    standardsim3lementatio

    ns of "

    &ana-ement

    and otherrelevant

    3rotocols and

    standards that

    im3lement2ualit1 of

    service for a

    !A.

    How toapproachservice-orientedmodeling andarchitecture

    his section

    describes ho5to combinea

    to3do5n,business

    driven

    a33roach 5ith

    a bottomu3a33roach,

    levera-in-

    le-ac1

    investments.

    erviceoriented

    modelin-

    a33roach3rovides

    modelin-,

    anal1sis,

    desi-n

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    42/70

    techni2ues,

    and activitiesto define the

    foundations of

    a !A. It

    hel3s b1definin- the

    elements in

    each of the

    !A la1ersand ma0in-

    critical

    architectural

    decisions ateach level. It

    does so usin-

    a combination

    of a to3do5n,business

    driven manner

    of service

    identificationcou3led 5ith a

    stream of

    5or0 that

    conductsservice

    identification

    throu-hlevera-in-le-ac1 assets

    and s1stems.

    In this 5a1,

    hi-hlevelbusiness

    3rocess

    functionalit1 is

    e$ternali4edfor lar-e

    -rained

    services.maller-rained

    services

    those that

    hel3 reali4ethe hi-her

    level of

  • 8/11/2019 soa_ibm_1

    43/70

    services are

    identified b1e$aminin- the

    e$istin-

    le-ac1

    functionalit1and decidin-

    ho5 to create

    ada3tors and

    5ra33ers, orcom3onenti4in

    - the le-ac1

    to e$ternali4e

    the desiredfunctionalit1

    often loc0ed

    5ithin the

    s1stem.inall1, usin-

    -oalservice

    modelin-, 1ou

    use a cross-sectional

    a33roach to

    cut do5n the

    sheer numberof candidate

    services that

    mi-ht alread1be identified.A more

    judicious

    a33roach

    5ould be tofirst do to3

    do5n, then

    -oalservice

    modelin-, andfinall1 bottom

    u3 le-ac1

    anal1sis ofe$istin-assets. he

    messa-e is:

    the faster 1ou

    sco3e the3roject do5n

    to a

    http://www.webservices.org/http://www.webservices.org/http://www.webservices.org/http://www.webservices.org/
  • 8/11/2019 soa_ibm_1

    44/70

    mana-eable

    and realisticset, the

    sooner 1ou

    can reali4e

    value b1focusin- on

    0e1 services

    to e$3ose 5ith

    servicedescri3tions

    that form the

    cornerstone of

    the !A.his

    combination of

    functional

    businessas3irations

    and levera-in-

    of e$istin-

    investments inle-ac1

    s1stems

    3rovide a

    3otentsolution to

    or-ani4ations

    that 5ant tohave 2uic05ins and

    mi-rate their

    enter3rise to a

    modern !A.Consolidation

    of soft5are

    a33lications

    throu-hservice

    oriented

    inte-rationthus becomes3ossible.

    ervice

    oriented

    inte-ration isan evolution

    of #nter3rise

  • 8/11/2019 soa_ibm_1

    45/70

    A33lication

    Inte-ration(#AI) in 5hich

    3ro3rietar1

    connections

    are re3laced5ith

    standards

    based

    connectionsover an #%

    notion that is

    location

    trans3arentand 3rovides a

    fle$ible set of

    routin-,

    mediation,and

    transformation

    ca3abilities.

    Service-orientedmodeling: Theanalysis anddesign ofservices

    o far, I have

    set the sta-e

    b1 describin-

    a !A. I havealso sho5n

    that to build a

    !A, 1ou

    need to ma0e

    0e1architectural

    decisions

    about eachla1er in 1our

    !A, and that

    1our desi-n

    must reflect a

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    46/70

    set of

    businessali-ned

    services and

    decisions

    about ho5the1 5ill be

    com3osed into

    a33lications

    usin-choreo-ra3h1.

    Bnli0e 1our

    comfortable

    5orld ofobjects, 1ou

    need to ta0e

    into account

    t5o3ers3ectives

    in a !A/ that

    of the service

    consumer andservice

    3rovider. he

    service bro0er

    is currentl1not

    mainstream

    and 5ill becovered in alater venue.

    he desi-n

    strate-1 for a

    !A does notstart from the

    =bottomu38

    as is often the

    case 5ith a"eb services

    based

    a33roach. oumustremember

    that !A is

    more strate-ic

    and businessali-ned. "eb

    services are a

  • 8/11/2019 soa_ibm_1

    47/70

    tactical

    im3lementation of !A. A

    number of

    im3ortant

    activities anddecisions e$ist

    that influence

    not just

    inte-rationarchitecture

    but enter3rise

    and

    a33licationarchitectures

    as 5ell. he1

    include the

    activities fromthe t5o 0e1

    vie5s of the

    consumer and

    3roviderdescribed in

    i-ure +

    belo5.

    'iure 0$

    Activities of

    service-orientedmodelin

    i-ure +

    sho5s the

    activities that

    are t13icall1

    http://www.ibm.com/developerworks/library/ws-soa-design1/#figure4%23figure4http://www.ibm.com/developerworks/library/ws-soa-design1/#figure4%23figure4http://www.ibm.com/developerworks/library/ws-soa-design1/#figure4%23figure4http://www.ibm.com/developerworks/library/ws-soa-design1/#figure4%23figure4
  • 8/11/2019 soa_ibm_1

    48/70

    conducted b1

    each of theroles of

    3rovider and

    consumer.

    ote that the3rovider6s

    activities are a

    su3erset of

    theconsumer6s

    activities (for

    e$am3le, the

    3rovider5ould also be

    concerned

    5ith service

    identification,cate-ori4ation,

    and so forth).

    In man1

    cases, thedifferentiation

    of the roles

    comes from

    the fact thatthe consumers

    s3ecif1 the

    services the15ant, oftensearch for it,

    and once the1

    are convinced

    of the matchbet5een the

    s3ecification

    of the service

    the1 areloo0in- for,

    and that

    3rovided b1 aservice3rovider, the1

    bind and

    invo0e the

    service asneeded. he

    3rovider, in

  • 8/11/2019 soa_ibm_1

    49/70

    turn, needs to

    3ublish theservices the1

    are 5illin- to

    su33ort/ both

    in terms offunctionalit1

    and most

    im3ortantl1 in

    terms of theo that

    consumers 5ill

    re2uire. his

    im3licitcontract

    bet5een

    consumer and

    3rovider mi-htmature into

    an e$3licit

    contract in

    terms ofLAs/

    ne-otiated

    either

    electronicall1or throu-h

    business and

    le-al venues.he activitiesdescribed

    above can be

    de3icted to

    flo5 5ithin theservice

    oriented

    modelin- and

    architecturemethod, as

    sho5n in

    i-ure Gbelo5.

    'iure 1$ %e

    service-

    orientedmodelin

    and

    http://www.ibm.com/developerworks/library/ws-soa-design1/#figure5%23figure5http://www.ibm.com/developerworks/library/ws-soa-design1/#figure5%23figure5
  • 8/11/2019 soa_ibm_1

    50/70

    arc%itecture

    met%od

    he 3rocess of

    serviceorientedmodelin- and

    architecture

    consists of

    three -eneralste3s:

    identification,

    s3ecification

    and reali4ationof services,

    com3onentsand flo5s

    (t13icall1,choreo-ra3h1

    of services).Serviceidentification

    his 3rocess

    consists of a

    combination of

    to3do5n,bottomu3,

    and middleout techni2ues

    of domaindecom3osition

    , e$istin-

    asset anal1sis,

    and -oalservice

  • 8/11/2019 soa_ibm_1

    51/70

    modelin-. In

    the top-downview, a

    blue3rint of

    business use

    cases 3rovidesthe

    s3ecification

    for business

    services. histo3do5n

    3rocess is

    often referred

    to as domaindecomposition

    , 5hich

    consists of the

    decom3ositionof the

    business

    domain into

    its functionalareas and

    subs1stems,

    includin- its

    flo5 or3rocess

    decom3osition

    into3rocesses,sub

    3rocesses,

    and hi-hlevel

    business usecases. hese

    use cases

    often are ver1

    -oodcandidates for

    business

    servicese$3osed atthe ed-e of

    the enter3rise,

    or for those

    used 5ithinthe

    boundaries of

  • 8/11/2019 soa_ibm_1

    52/70

    the enter3rise

    across lines ofbusiness.

    In the

    bottom-up

    portionof the3rocess or

    eisting

    system

    analysis,e$istin-

    s1stems are

    anal14ed and

    selected asviable

    candidates for

    3rovidin-

    lo5er costsolutions to

    the

    im3lementatio

    n ofunderl1in-

    service

    functionalit1

    that su33ortsthe business

    3rocess. In

    this 3rocess,1ou anal14eand levera-e

    API6s,

    transactions,

    and modulesfrom le-ac1

    and 3ac0a-ed

    a33lications.

    In somecases,

    com3onenti4at

    ion of thele-ac1s1stems is

    needed to re

    modulari4e

    the e$istin-assets for

    su33ortin-

  • 8/11/2019 soa_ibm_1

    53/70

    service

    functionalit1.!he middle-

    out view

    consists of

    goal-servicemodelingto

    validate and

    unearth other

    services notca3tured b1

    either to3

    do5n or

    bottomu3service

    identification

    a33roaches. It

    ties servicesto -oals and

    sub-oals, 0e1

    3erformance

    indicators, andmetrics.Serviceclassificationorcategoriation

    his activit1 is

    started 5henservices have

    been

    identified. It is

    im3ortant tostart service

    classification

    into a service

    hierarch1,reflectin- the

    com3osite or

    fractal nature

    of services:services can

    and should be

    com3osed of

    finer-rainedcom3onents

    and services.

    Classification

  • 8/11/2019 soa_ibm_1

    54/70

    hel3s

    determinecom3osition

    and la1erin-,

    as 5ell as

    coordinatesbuildin- of

    interde3enden

    t services

    based on thehierarch1.

    Also, it hel3s

    alleviate the

    service3roliferation

    s1ndrome in

    5hich an

    increasin-number of

    small-rained

    services -et

    defined,desi-ned, and

    de3lo1ed 5ith

    ver1 little

    -overnance,resultin- in

    major

    3erformance,scalabilit1, andmana-ement

    issues. &ore

    im3ortantl1,

    service3roliferation

    fails to

    3rovide

    services,5hich are

    useful to the

    business, thatallo5 for theeconomies of

    scale to be

    achieved.Su!systemanalysis

    his activit1

  • 8/11/2019 soa_ibm_1

    55/70

  • 8/11/2019 soa_ibm_1

    56/70

    activit1.Componentspecification

    In the ne$t

    major activit1,

    the details ofthe

    com3onent

    that

    im3lement theservices are

    s3ecified:

    Data

    >ules

    ervice

    s

    Confi-u

    rable3rofile

    ariatio

    ns

    &essa-in- and

    eventss3ecifications

    and

    mana-ement

    definition

    occur at thisste3.Serviceallocation

    ervice

    allocation

    consists of

    assi-nin-services to the

    subs1stems

    that have

    been identifiedso far. hese

    subs1stems

    have

    enter3risecom3onents

    that reali4e

    their3ublished

  • 8/11/2019 soa_ibm_1

    57/70

    functionalit1.

    !ften 1ouma0e the

    sim3lif1in-

    assum3tion

    that thesubs1stem

    has a oneto

    one

    corres3ondence 5ith the

    enter3rise

    com3onents.

    Structuringcomponents

    occurs 5hen

    1ou use

    3atterns toconstruct

    enter3rise

    com3onents

    5ith acombination

    of:

    &ediato

    rs

    aMade

    >ule

    objects Confi-u

    rable

    3rofiles

    actorie

    s

    erviceallocation also

    consists of

    assi-nin- the

    services andthe

    com3onents

    that reali4e

    them to thela1ers in 1our

    !A.

    Allocation of

    com3onents

    http://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.html
  • 8/11/2019 soa_ibm_1

    58/70

    and services

    to la1ers inthe !A is a

    0e1 tas0 that

    re2uire the

    documentation and

    resolution of

    0e1

    architecturaldecisions that

    relate not onl1

    to the

    a33licationarchitecture

    but to the

    technical

    o3erationalarchitecture

    desi-ned and

    used to

    su33ort the!A

    reali4ation at

    runtime.Servicerealiation

    his ste3

    reco-ni4esthat thesoft5are that

    reali4es a

    -iven service

    must beselected or

    custom built.

    !ther o3tions

    that areavailable

    include

    inte-ration,transformation, subscri3tion

    and

    outsourcin- of

    3arts of thefunctionalit1

    usin- "eb

  • 8/11/2019 soa_ibm_1

    59/70

    services. In

    this ste3 1ouma0e the

    decision as to

    5hich le-ac1

    s1stemmodule 5ill be

    used to reali4e

    a -iven

    service and5hich services

    5ill be built

    from the

    =-roundu38.!ther

    reali4ation

    decisions for

    services otherthan business

    functionalit1

    include:

    securit1,mana-ement

    and

    monitorin- of

    services.In realit1,

    3rojects tend

    to ca3itali4eon an1amount of

    3arallel efforts

    to meet

    closin-5indo5s of

    o33ortunit1.

    herefore, I

    recommendconductin-

    three streams

    in 3arallel.o3do5ndomain

    decom3osition

    (3rocess

    modelin- anddecom3osition

    , variation

  • 8/11/2019 soa_ibm_1

    60/70

    oriented

    anal1sis,3olic1 and

    business rules

    anal1sis, and

    domains3ecific

    behavior

    modelin-

    (usin--rammars and

    dia-rams) ) is

    conducted in

    3arallel 5ith abottomu3

    anal1sis of

    e$istin-

    le-ac1 assetsthat are

    candidates for

    com3onenti4at

    ion(modulari4atio

    n) and service

    e$3osure. o

    catch thebusiness

    intent behind

    the 3rojectand to ali-nservices 5ith

    this business

    intent, -oal

    servicemodelin- is

    conducted.

    Conclusion

    In this article,

    I started 5ith

    thefundamentals

    of a service

    oriented

    &ac# to top

    http://www.ibm.com/developerworks/library/ws-soa-design1/#main%23mainhttp://www.ibm.com/developerworks/library/ws-soa-design1/#main%23main
  • 8/11/2019 soa_ibm_1

    61/70

    architecture,

    its la1ers, andthe associated

    t13es of

    architectural

    decisions.hen, I

    described the

    activities in a

    method forservice

    oriented

    modelin- and

    theim3ortance of

    activities from

    the service

    consumer and3rovider

    3ers3ectives

    (service

    bro0er 5ill bedealt 5ith in a

    later article).

    his method

    3rovidess3ecific

    -uidance on

    the anal1sisand desi-nactivities for

    determinin-

    the three

    fundamentalas3ects of a

    service

    oriented

    architecture:services,

    flo5s, and

    com3onentsthat reali4ethe services. I

    also described

    a tem3late

    1ou can usefor 1our

    architectural

  • 8/11/2019 soa_ibm_1

    62/70

    decisions in

    each of thela1ers of the

    !A.

    I noted that

    for serviceidentification,

    it is im3ortant

    to combine

    the threea33roaches of

    to3do5n,

    bottomu3,

    and crosssectional,

    -oalmodel

    anal1sis. I

    then loo0ed atthe main

    activities of

    s3ecification

    and reali4ationof services.

    In the ne$t

    column in this

    series, I 5illa33l1 the

    method to the

    ban0in-domain ofaccount

    mana-ement

    and describe

    each ste3 5ithan e$am3le.

    In addition to

    identification,

    s3ecification,and

    reali4ation, I

    5ill alsodiscuss theremainin-

    activities of

    the service

    orientedmodelin-

    a33roach that

  • 8/11/2019 soa_ibm_1

    63/70

  • 8/11/2019 soa_ibm_1

    64/70

    David &ott.

    #esources

    >ead

    the

    article

    =#lements of

    ervice

    oriented

    Anal1sisand

    Desi-n8

    ,

    (develo

    3er"or0s, Oune

    *''+)

    formore

    informa

    tion onthis

    interdis

    ci3linar

    1

    modelin-

    a33roac

    h for!A

    3rojects

    .

    >ead

    about

    8Pattern

    s:

    erviceoriented

    Architec

    ture

    and"eb

    ervice

    s8

    http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.ibm.com/developerworks/webservices/library/ws-soad1/%20http://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htmhttp://www.redbooks.ibm.com/redbooks/SG246303/wwhelp/wwhimpl/java/html/wwhelp.htm
  • 8/11/2019 soa_ibm_1

    65/70

    >edboo

    0,9*+

    ;'

    '',

    A3ril*''+,

    #ndrei

    &., et

    al.

    isit

    "ebervices.!r

    - for

    more

    information on

    the"oal-

    oriented

    approac

    h to

    enterprise

    compon

    ent

    identific

    ationand

    specific

    ation,Commu

    nication

    s of the

    AC&,!ct

    *''*,

    N. Levi,

    A.Arsanja

    ni.

    9et the

    #terna

    lizing$ompo

    nent

    %anner

    http://www.webservices.org/http://www.webservices.org/http://www.webservices.org/http://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://www.webservices.org/http://www.webservices.org/http://www.webservices.org/http://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACM
  • 8/11/2019 soa_ibm_1

    66/70

    s to

    Achieve"reater

    %aintai

    nability

    througha

    &ighly

    'e-

    $onfigurable

    Architec

    tural

    Stylearticle

    b1 Ali

    Arsanja

    ni,Oames

    O.

    Al3i-ini,

    and?ussein

    7edan.

    Proceed

    in-s ofthe

    IC&:

    ;*.I###Press

    *''*.

    9o to

    Ali

    Arsanja

    niJsPatterns

    and

    %est

    3ractices "eb

    site for

    more

    information on

    he

    #nter3rise

    http://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://portal.acm.org/citation.cfm?id=570927&dl=ACM&coll=ACMhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.html
  • 8/11/2019 soa_ibm_1

    67/70

    Com3on

    entPattern,

    3roceed

    in-s of

    3atternlan-ua-

    es of

    3ro-ra

    mmin-*'''.

    Chec0

    out the

    8Pattern

    s:

    Im3lementin-

    an !A5ith the

    #nter3rise

    ervice

    %us8

    >edboo0,

    9*+

    ;+;

    '',

    Au-ust*''+,

    &artin

    Neen,usan

    %isho3,

    Alan

    ?o30ins, ven

    &ilins0i,

    Chris

    ott,>ic0

    >obinso

    n,

    Oonathan

    Adams,

    Paulerschu

    http://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://www.arsanjani.org/patterns.htmlhttp://www.arsanjani.org/patterns.htmlhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Openhttp://publib-b.boulder.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg246346.html?Open
  • 8/11/2019 soa_ibm_1

    68/70

  • 8/11/2019 soa_ibm_1

    69/70

    3artici3

    atin- indevelo3

    er"or0s

    blo-s.

    %ro5se

    for

    boo0son

    these

    and

    othertechnica

    l to3ics.

    "ant

    more