Service Oriented Architecture (SOA) 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. Earlier SOA was based on the DCOM or Object Request Brokers
(ORBs). Nowadays SOA is based on the Web Services. Broadly SOA can be classified into two
terms: Services and Connections.
Services:
A service is a function or some processing logic or business processing that is well defined, selfcontained,
and does not depend on the context or state of other services. Example of Services is Loan Processing Services, which can be self-contained unit for process the Loan Applications.
Other example may be 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 the between services.
The following figure is a typical example of the service-oriented architecture. It shows how a service
consumer sends a service request to a service provider. After accepting the request, service provider
sends a message to the service consumer. In this case a service provider can also be a service
consumer.
Different Technologies Used:
SOA is much different from point-to-point architectures. SOA comprise loosely coupled, highly
interoperable application services. These services can be developed in different development
technologies (such as Java, .NET, C++, PERL, PHP), the software components become very reusable
i.e. the same C# (C Sharp) service may be used by a Java application and / or any other programming
language. WSDL defines an standard, which encapsulates / hides the vendor / language specific
implementation from the calling client / service. Why SOA?
SOA architecture enables seamless Enterprise Information Integration. Here are some of the Benefits
of the Service Oriented Architecture:
- Due to its platform independence, it allows companies to use the software and hardware of
their choice
- There is no threat of vendor lock-in
- SOA enables incremental development, deployment, and maintenance.
- Companies can use the existing software (investments) and use SOA to build applications
without replacing existing applications
- The training costs are low, so the available labor pool can be used for running the applications
|