Service Oriented Architecture

The Service Oriented Architecture (SOA) provides a theoretical model for all Web Services. The SOA model contains three entities and three operations: Publish, find, bind. 

  1. The Service Requester is an application that is looking for services. To locate desired services, it turns to Registry and requests a Find() operation.
  2. The Registry is a well-known application that returns information regarding registers in response to search criteria submitted by Find() operations.
  3. The Provider Publish() these details as well as information about how to access provider and connection details.
  4. Requester uses connection details to Bind() to the Provider.

SOA Alternatives 

SOA is opposite of the concept of distributed objects.With SOA:
  • Data are exchanged between different systems where each system operates on its own local copy.
  • Each system operates using its own local methods and procedure.
  • Each system is decoupled from others.
  • Not like distributed objects, each connected system has its own business object model. Therefore, the systems are allowed to scale.
Other alternatives:
  • Remote procedure call architectures such as Java RMI, DCOM, and CORBA
  • HTTP-like transactional architectures like Servlet/JSP, ASP, PHP,  and CGI
  • Screen Scraper client-side program. It uses the existing interface by pushing data into the interface, and then scrapes the returned data off the interface and converts them into something the client application needs.

Geospatial SOA

 

Images: