Google News
logo
WCF - Interview Questions
Explain what is SOA? Are web-services SOA?
SOA
 
SOA stands for service oriented architecture. Service Oriented Architecture is an architectural approach in software development where the application is organized as "Services". Services are a group of methods that contain the business logic to connect a DB or other services. For instance you go to a hotel and order food. Your order first goes to the counter and then it goes to the kitchen where the food is prepared and finally the waiter serves the food.

SOA
Some important characteristics of Service Oriented Architecture
 
* SOA services should be independent of other services.
Altering a service should not affect the client calling the service.
 
* Services should be self-contained.
 
• Services should be able to define themselves (in the Web Service Description Language (WSDL)). Services should be able to describe what they do. It should be able to tell the client what all of the operations it does, what are all the data types it uses and what kind of value it will return.

SOA Overview : A Service Oriented Architecture is based on four key abstractions.
 
* An Application Front End
* A Service
* A Service Repository
* A Service Bus

Application Front End : The application front end is decoupled from the services. Each service has a contract that defines what it will do and one or more interfaces to implement the contract.
 
A Service : It has the methods with the defined contracts and the implementation of the business logic to connect the DB or other service.
 
A Service Repository : The service repository provides a home for the services and the service bus provides an industry-standard mechanism for connecting to and interacting with the services.
 
Are web-services SOA ?
 
SOA is thinking, it's an architectural concept and web service is one of the technical approach to complete it. Web services are the preferred standards to achieve SOA.
 
* In SOA we need the services to be loosely coupled. A web service communicates using SOAP protocol which is XML based which is very loosely coupled. SOA services should be able to describe themselves. WSDL describes how we can access the service.
* SOA services are located in a directory. UDDI describes where we can get the web service. This nothing but implementation of SOA registry.
Advertisement