Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
2Activity
0 of .
Results for:
No results containing your search query
P. 1
SOA

SOA

Ratings: (0)|Views: 17|Likes:
Published by Madhur Gupta
service oriented arch
service oriented arch

More info:

Published by: Madhur Gupta on Jun 25, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/10/2014

pdf

text

original

 
{2}
Chapter 
Service-Oriented Architecture
As we explored in the previous chapter, Web services promote an environmentfor systems that is loosely coupled and interoperable. Many of the concepts for Web services come from a conceptual architecture called service-oriented archi-tecture (SOA). SOA configures entities (services, registries, contracts, and prox-ies) to maximize loose coupling and reuse. This chapter describes these entitiesand their configuration in an abstract way. Although you will probably use Webservices to implement your service-oriented architecture, this chapter explainsSOA without much mention of a particular implementation technology. This isdone so that in subsequent chapters, you can see the areas in which Web servicesachieve some aspects of a true SOA and other areas in which Web services fallshort. Although Web services are a good start toward service-oriented archi-tecture, this chapter will discuss what a fully implemented SOA entails. We willexamine the following issues:What is SOA? What are its entities?What are the properties of SOA?How do I design an interface for a service?Before we analyze the details of SOA, it is important to first explore the con-cept of software architecture, which consists of the software’s coarse-grainedstructures. Software architecture describes the system’s components and the waythey interact at a high level.These components are not necessarily entity beans or distributed objects.Theyareabstractmodulesofsoftwaredeployedasaunitontoaserverwithothecomponents. The interactions between components are called
connectors.
Theconfigurationofcomponentsandconnectorsdescribesthewayasystemisstruc-tured and behaves, as shown in Figure 2.1. Rather than creating a formal defini-tionforsoftwarearchitectureinthischapter,wewilladoptthisclassicdefinition:“The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally
35
 
visible properties of those components, and the relationships among them.”(Bass, Clements, and Kazman 1997)Service-orientedarchitectureisaspecialkindofsoftwarearchitecturethathasseveraluniquecharacteristics.ItisimportantforservicedesignersanddeveloperstounderstandtheconceptsofSOA,sothatthey canmakethemosteffectiveuseof Web services in their environment.SOA is a relatively new term, but the term “service” as it relates to a softwareservicehasbeenaroundsinceatleasttheearly1990s,whenitwasusedinTuxedoto describe “services” and “service processes” (Herzum 2002). Sun defined SOAmore rigorously in the late 1990s to describe Jini, a lightweight environment for dynamicallydiscoveringandusingservicesonanetwork.Thetechnologyisusedmostlyin reference to allowing “networkplug and play” for devices. Itallowsde-vices such as printers to dynamically connect to and download drivers from thenetwork and register their services as being available.The goal in developing Jini was to create a dynamically networked environ-ment for devices, services, and applications. In this environment, services anddevices could be added to and removed from the network dynamically (SunMicrosystems,
Jini Network Technology, www.sun.com/jini 
). There is more interestlately in the software development community about the concepts behind SOAbecause of the arrival of Web services.Figure 2.2 shows that other technologies can be used to implement service-orientedarchitecture.Webservicesaresimplyonesetoftechnologiesthatcanbeused to implement it successfully.The most important aspect of service-oriented architecture is that it separatesthe service’s implementation from its interface. In other words, it separates the“what” from the “how.” Service consumers view a service simply as an endpointthat supports a particular request format or contract. Service consumers are notconcerned with how the service goes about executing their requests; they expectonly that it will.Consumers also expect that their interaction with the service will follow acontract,anagreed-uponinteractionbetweentwoparties.Thewaytheserviceex-ecutestasksgiventoitbyserviceconsumersisirrelevant.Theservicemightfulfillthe request by executing a servlet, a mainframe application, or a Visual Basic ap-plication. The only requirement is that the service send the response back to theconsumer in the agreed-upon format.
36
Chapter 2
Service-Oriented Architecture
ComponentComponentConnector
Figure 2.1
Softwarearchitecturedescribes asystem’s com-ponents andconnectors.
 
>SOA Entities
The “find, bind, and execute” paradigm as shown in Figure 2.3 (Talking Blocks2001) allows the consumer of a service to ask a third-party registry for the servicethat matches its criteria. If the registry has such a service, it gives the consumer acontract and an endpoint address for the service. SOA consists of the followingsixentitiesconfiguredtogethertosupportthefind,bind,andexecuteparadigm.
SOA Entities
37
Software ArchitectureService-Oriented ArchitectureWeb ServicesJiniImplements
Figure 2.2
 Web servicesare one set of technologies for implement-ing service-orientedarchitecture.
ServiceConsumerRegistryServiceProviderContract
  R e g  i s  t e r
F  i  n  d  
BindandExecute
Figure 2.3
The “find-bind-execute”paradigm.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->