Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601.

Similar presentations


Presentation on theme: "1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601."— Presentation transcript:

1 1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601

2 2 Introduction A service-oriented architecture is an information technology approach or strategy in which applications make use services available in a network –In Service Oriented Architecture, the system operates as a collection of services. Each Service may interact with various other Services to accomplish a certain task. –A service provides a specific function, typically a business function. Eg. “getAccountBalance()”, “getCreditHistory()”.

3 3 SOA

4 4 SOA is as an approach to connecting business services so that they can communicate with each other in a widespread and flexible way. What distinguishes an SOA from other architectures is loose coupling. Loose coupling means that the client of a service is essentially independent of the service. –The way a client (which can be another service) communicates with the service doesn't depend on the implementation of the service. For instance, the client doesn't need to know what language the service is coded in or what platform the service runs on.

5 5 SOA Requester (Service Consumer). Sends a request message and waits for a reply message. Replier (Service Provider). Receives the request message and responds with a reply message.

6 6 SOA …Service Consumer Balance = getaccountBalance(“Wachira.”, 20344209) …Service Provider function getAccountBalance(String s, Float i) { … return result; } Internet

7 7 Basic Components of SOA Service providers. A service provider is a component that execute a business function. Service consumers. A service consumer is a set of components interested in using one or more of the services provided by service providers. The service consumer is an application, service, or some other type of software module that requires a service Service repository. A service repository contains the descriptions of the services. Service providers register their services in this repository and service consumers access the repository to discover the services being provided. uddi. Service contract: A contract is a specification of the way a consumer of a service will interact with the service provider. It specifies the format of the request and response from the service

8 8 SOA Components

9 9 Guaranteed Delivery One of the main advantages of asynchronous messaging over RPC is that the participants don't need to be online at the same time. While the network is unavailable, the messaging system has to use a store to ensure message durability. SOA use persistent media like files and databases to ensure recovery from system crashes

10 10 Service Routing SOA provides location transparency to the service consumers: Service consumers have to be able to send a request for any service located in any service domain. This is done in two ways: –Intelligent Services Location information for all services is in each individual service. This approach isn't in line with the loosely coupled architecture embraced by services. Nevertheless, it supports a high performing solution. –Routers The other approach is to move the routing intelligence from the individual services to a routing component. These routing components can be at two levels: service domain and service.

11 11 SOA Service domain router A service domain router has intelligence about the location of all service domains. Upon receiving a request, it determines if it can service the given request by using one of the services it supports. If so, it processes the request. If not, it passes the request on to the appropriate domain that can service the request. Service router A service router is used within a service domain to direct the incoming request to the appropriate service within the domain. Only those requests that can be serviced within a given service domain are passed on to the service router. The service router reduces the load of the location information on the individual services.

12 12 Service Routing

13 13 Why SOA Reusability. Developers can take the code developed for existing business applications, then reuse it to meet new business requirements. Reuse of services instead of developing code that reproduces those functions can result in a huge savings in application development cost and time Interoperability. In SOA the loosely coupled clients and services can communicate and understand each other no matter what platform they run on. This is achieved when clients and services have a standard way of communicating with each other across platforms. Flexibility. Loosely-coupled services are typically more flexible than more tightly- coupled applications. In a tightly-coupled architecture, the different components of an application are tightly bound to each other, sharing semantics and libraries. This makes it difficult to evolve the application to keep up with changing business requirements. The loosely-coupled in an SOA allows applications to be flexible, and easy to evolve with changing requirements Cost Efficiency. Customized solutions are costly to build and to maintain and extend because they're typically tightly-coupled. Changes in one components might require changes to others. The reuse of business functions is the biggest cost saving of all.

14 14 Reference: Introduction to Service-Oriented Programming, Guy Bieber and Jeff Carpenter, Project Openwings, Motorola ISD, 2002 Using Service-Oriented Architecture and Component- Based Development to Build Web Service Applications, Alan Brown, Simon Johnston, and Kevin Kelly, IBM, June 2003 Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions, Gregor Hohpe and Bobby Woolf, Addison-Wesley, 2004

15 15 THE END Long Live SOA


Download ppt "1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601."

Similar presentations


Ads by Google