Sei sulla pagina 1di 28

SERVICE ORIENTED ARCHITECTURE, ITS TENETS AND CHALLENGES

Presented By:Vatesh Pasrija


1

Shobhit Khandelwal

TABLE OF CONTENT
Introduction to Service Oriented Architecture Type of Service Oriented Architectures Software Service Engineering Tenets Research Issues and Challenges

SERVICE ORIENTED ARCHITECTURE


Service Oriented Architecture or SOA for short is a new architecture for the development of loosely coupled distributed applications. In fact service-oriented architecture is collection of many services in the network. These services communicate with each other and the communications involves data exchange & even service coordination. SOA is based on the Web Services. Broadly SOA can be classified into two terms: Services and Connections.

SERVICE ORIENTED ARCHITECTURE

Services: A service is a function or some processing logic or business processing that is welldefined, self-contained, and does not depend on the context or state of other services. Example of Services are: Loan Processing Services, which can be self-contained unit for process the Loan Applications. Weather Services, which can be used to get the weather information. Any application on the network can use the service of the Weather Service to get the weather information. Connections: Connections means the link connecting these self-contained distributed services with each other, it enable client to Services communications. In case of Web services SOAP over HTTP is used to communicate between the services. .

SERVICE ORIENTED ARCHITECTURE COMPONENTS

SOA comprises of the following


Service Consumption Assemblies Service Pool

Service Provider Pool contains:


Process Services: implemented in BPEL Business Activity: Wrapped java Components Data/Resource Access Service: SQL adapters and connectors

Service Consumption Assemblies are mainly Web Servers. Consumers and Producers communicate over ESB using SOAP as a message exchange protocol.

SERVICE ORIENTED ARCHITECTURE

ENTERPRISE SERVICE BUS

Web Service Description Language(WSDL)


SOA functions and services are defined by a description language known as WSDL. The WSDL defines the interface to communicate directly with the application business logic. In particular, all clients can directly communicate with application with XML messages through service interfaces with WSDL.

Simple Object Access Protocol(SOAP)


All the Service Request and Replies are messages which are formatted according to SOAP. SOAP presents a light-weighted protocol used for communication over the Internet using protocol like HTTP/HTTPs etc. The SOAP request is received by run-time service (Listener) that accept SOAP message, extracts the XML message body, transforms the XML message into a native protocol, and pass the request to actual business process within the enterprise. 8

KEY POINTS TO SOA

SOFTWARE SERVICE ENGINEERING: TENETS


Software Service Engineering is the science and application of concepts, models, methods and tools to design, develop(source), deploy, and maintain businessaligned and SOA-based software systems in a disciplined, reproducible and repeatable manner. Tenets are the principles without which is it very difficult to guarantee that the developed software system and its services meet the standards and are loosely coupled and specified via clean and proper interface.

10

SIX TENETS

The following are some of the SSE tenets:

Technical Federation Dynamism or Virtualization Organizational Federation Explicit Boundaries or service contracts Heterogeneity Business-IT alignment

11

1.TECHNICAL FEDERATION

Its states that SSE should be able to cater the service enabled software applications that are logically and physically distributed. Services should be independent and loosely coupled.

SSE should support Message based communication via ESB and encourage Asynchronous and Non-blocking interaction between service consumer and service provider. SSE should favor send and forget, store and forward principle through the use of ESB queue. Hence increase flexibility and reliability.
12

2.DYNAMISM

This Tenet states that services must be aggregated into service composition at runtime via late binding to support specific task.(forming agile service network ) Loose coupling and late binding are two key principle for increasing the adaptability of service application. For Example service consumption assemblies may lookup available process services at runtime, depending on the content of incoming user requests( e.g regular or premium customer).So a process can service can pick up a different business activity service based on current processing state and required quality of service. This scenario can be achieved by using Pipe-and-Filters and Model View Controller Pattern. Lookup Registry is be needed.
13

3.ORGANIZATIONAL FEDERATION

SSE should be shaped around the belief stating that development and maintenance are often conducted in distributed organizational units, possibly involving multiple lines of business, other enterprise and government institutions. Organizational federation requires sound distributed governance mechanism accommodating the individual needs of the various stakeholders. For Example parts of application are developed by a separate project team(which may be geographically distributed but are managed centrally). In SOA, each service provider in the service pool and each service composition assembly may be developed autonomously by a different unit or legal entity.
14

4.EXPLICIT BOUNDARIES(SERVICE CONTRACTS)


Services in SOA should have clear boundaries. These clear boundaries must be provided in form of service contracts that captures goals and constraints i.e. pre- and postconditions. Structural Contract:- An intrinsic part of the service contracts entails the service interface that specifies the messages a service understands and the service endpoints that are available. Behavioral Contract:- Enriching the service interface with additional semantic information such as scenarios or behavior allows a more robust and stable service composition. Policy Contract:- This is amended with Service Level Agreements(SLAs) between service consumers and service provider which allow service consumer to express the expected and service provider to specify the available QoS.
15

5.HETROGENEITY

This Tenet states that any SSE concept, method or tool must provide heterogeneity and the context in which the architecture elements must operate. In other words, system should be platform independent. SSE has to deal with services that may be deployed on various platforms including mobile devices, compute clouds or any legacy systems and have been developed under various programming paradigms such as OO and CBD. For Example, the user client may be a PHP script etc whereas the process might be a executable BPEL process hosted by BPM engine and business activity service might be implemented as java or C# components etc. Hence making system platform independent.

16

5.HETROGENEITY

17

6.BUSINESS-IT ALIGNMENT

SSE should adopt new style of development such that SOA applications can be systematically and routinely mapped to business processes. For example, process services are responsible for managing session state and preserving process and resource integrity. The control flows inside the executable processes have to be aligned with the wants and needs of business users. From the architectural viewpoint, business rules provide an additional way of expressing business semantics inside an application and such rules are used to assure that system meet regulatory compliance laws and business policies. SSE challenge is to integrate such business rules into overall service engineering lifecycle and programming model.
18

7.HOLISTIC ENGINEERING APPROACH

19

EXAMPLE OF SOA(AUTOMOTIVE WORK ORDER)

20

21

SERVICE MODEL EXAMPLE

22

BUSINESS PROCESS MODEL

23

24

RESEARCH ISSUES AND CHALLENGES

Integration of various software platforms.

Service Provider (J2EE)

Service requester

Provider Requester Service Provider (.NET)

Change management and runtime integration

25

RESEARCH ISSUES AND CHALLENGES

Reliability and robustness of services.

For Example: Should be able to handle simultaneously many requests of pizza delivery

Cater the logically and physically distributed service

Forward and backward compatibility issues

In SOA applications, the context in which this property may be used is to vast to be decided in advance.
26

RESEARCH ISSUES AND CHALLENGES

The mapping from requirements to services fulfilling them

Difficult to bring in a uniform mechanism.

challenge of integrating and making heterogeneous systems work

Testing

27

REFERENCES
Software Service Engineering Service oriented architecture: Approaches, Technologies and Research Issues

28

Potrebbero piacerti anche