Transcription
An Introduction toService Oriented Architecture
IntroductionDefinitions–Sommerville –“Service-oriented architectures (SOAs) are a way of developingdistributed systems where system components are stand-alone services,executing on geographically distributed computers”OASIS (Organization for the Advancement of Structured Information Standards) “A paradigm for organizing and utilizing distributed capabilities thatmay be under the control of different ownership domains. It provides auniform means to offer, discover, interact with and use capabilities toproduce desired effects consistent with measurable preconditions andexpectations.”OASIS
IntroductionComponents services–“A loosely-coupled reusable software component thatencapsulates discrete functionality, which maybe distributedand programmatically accessed.” SOMMERVILLEConnectors messages–meta-data service descriptions, service interface etc.semantic meta-data
IntroductionFunctional AppsEnterprise AppsPaul A. StrassmannProfessor of Information SciencesVolgenau School of Information Technology and Engineering at George Mason Universityhttp://www.strassmann.com/SOA Apps
CharacteristicsIntegration “mesh-up” of different services– does a newspaper qualify as an SOA?an application––various services linked togetherreally an ad-hoc applicationScope narrowly focused services are simple and generally perform a single task
CharacteristicsDependency deployment execution usage–need to know what a service expects and what it returnsStateful vs. Statelessness ask the class?
CharacteristicsLoose coupling service bindings can change whenever– different but equivalent services can execute at different timesinterface definition does not changeReusability desirable to have reusable services
CharacteristicsIndependent of Platform ImplementationDiscoverable publisheddiscovered viadiscovery mechanisms––UDDI – web servicessimple blishServiceProviderserviceserviceserviceservice
Ian Gorton, Essential Software Architecture
ConsiderationsPerformance Computational penalties––– introduction of extra layersslower then native/binary RPCDo we need to use XML based RPC?Communication latencyEvolution how should we handle legacy systems–wrap the legacy system in service wrappers
ConsiderationsService granularity reuse vs. performanceFault-Tolerance partial failure vs. complete failure idempotent requestService agreement availability, cost, performance
ConsiderationsGovernance increases in difficulty––with an increase in diversely deployed servicesmany service providers meta-data management trust
SOA Levels of y/aa480021.aspx#aj1soa topic5
Three Architectural PerspectivesApplication Architecture business facing solution consumes services from one or more providers integrates them into the business processesThe Service Architecture a bridge between the implementations and the consumingapplicationslogical view of sets of services which are available 0021.aspx#aj1soa topic5
Three Architectural PerspectivesThe Component Architecture various environments supporting––the implemented applicationsthe business objects and their rary/aa480021.aspx#aj1soa topic5
Three Architectural y/aa480021.aspx#aj1soa topic5
ConsiderationsMarginal Benefit benefits offered to the first application benefits offered to the nth applicationTesting lack of tools lack of test services environmentSecurity authentication (WS-Security, SAML, WS-Trust) still very green
Infrastructure ServicesFundamental service layer data security computing communication applications
Another LookSOA business-centric IT architectural approachconsuming a service is usually cheaper then doing theworkExample DNS–reusable, scalable, fault-tolerant, well defined scope
Another LookWeb Services would you classify web-services as SOA? web services–––a technologymiddle-warean implementation of SOA
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
From Applications to ServicesNan Yang Chief Architect (Client Solutions Greater China Sun Microsystems) ICSE Shanghai 2006
“Service-oriented architectures (SOAs) are a way of developing distributed systems where system components are stand-alone services, executing on geographically distributed computers” – OASIS (Organization for the Advancement of Structured Information Standards) “A paradigm for organizing and utilizing distributed capabilities that