Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Shobhit Khandelwal
TABLE OF CONTENT
Introduction to Service Oriented Architecture Type of Service Oriented Architectures Software Service Engineering Tenets Research Issues and Challenges
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 Consumption Assemblies are mainly Web Servers. Consumers and Producers communicate over ESB using SOAP as a message exchange protocol.
10
SIX 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
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
19
20
21
22
23
24
Service requester
25
For Example: Should be able to handle simultaneously many requests of pizza delivery
In SOA applications, the context in which this property may be used is to vast to be decided in advance.
26
Testing
27
REFERENCES
Software Service Engineering Service oriented architecture: Approaches, Technologies and Research Issues
28