What is Service Oriented architecture?
The "Services" are the components which expose well defined interfaces and these interfaces communicate through XML messages. By Using the SOA you can build workflow that uses interfaces of these components. The SOA is typically useful when you are crossing heterogeneous technical boundaries, domain, organizations etc.
The .NET SOA technically uses the Web services to communicate with every service which crosses the boundaries. You can look SOA which sits on the top of the web services and provides a workflow.
The SOA uses service components that operate in their own domain boundary. Let us view some points of service:-
1) They can operate in their own boundary and in their own technology & are independent components.
2) They all have well defined interfaces that use XML & WSDL to explain themselves.
3) These Services have URL where anyone can find them and clients can bind the URL to avail for the services.
4) These Services are very loosely coupled architecture. In order to communicate to the service you only have to know the WSDL. Your client can then create proxy from the WSDL of the service.
Figure: - SOA basic architecture
The above diagram describes a broader picture of what service oriented architecture will look like. The main basic fundamental of SOA is a web service. In the above diagram you can see there are 2 services available. One is the "Credit Card" service & another is the "Address Check" web service. These both services are given by different company. Now we want to build a functionality which require to validate a credit card and also check that addresses are proper or not . In brief we will need functionalities of both the "CreditCard" and the "AddressCheck" service. Also note that the "CreditCard" service has its own business layer and DAL components, that can be in a proprietary language. It is very much possible that the whole Credit card service is made in the .NET and the Address check is of SAP implementation or JAVA implementation. But as both the systems gives there functionality using the Web services which is nothing but basically the XML message communication. So we have made new service which sits like a FAÇADE on the top of both the web service and performs both functionalities in one common service.A third service which sits on the top of both the webservice and consumes them. Also you can see that the UI part of the systems have access to the Business layer and Web service of there system. But the service which does both these check has only access to the Web service only.