Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) is usually a collection of services and these services involves in the communication either with simple data or with two or more services coordinating some activity. Service Oriented Architecture is an approach used to develop and architecture that involves the interactions between loosely coupled services that operate independently. Whenever the system needs upgrades and modifications, SOA architecture allows for re-usability of service from scratch which is the considered as benefit to business in terms of time and money.

Usually, webs services support connections between services to form service oriented architecture. Service is a piece of software that support to the business process and which can be implantation of part of business process or an entire business process. These services can be either internal service or external service to the organization. Combination of services supports different business processes such as use cases, use-case diagrams, and activity diagrams.

Service Oriented Architecture has some characteristics as follows:
  • SOA services have capability of describing interfaces by itself in cross platform XML documents. Web Services Description Language is a standard used to describe the services.
  • SOA services communicate with messages formally with XML schema and communication between consumers and providers are usually heterogeneous with partial knowledge about provider. Key business documents are used to view messages between services in an enterprise.
  • SOA services are maintained as directory listing by registry in an organization and application can look up and invoke services from registry. Universal Description, Definition, and Integration is a standard used for service registry.
  • Each SOA has association with Quality of Service (QoS) and its key elements are security requirements such as authentication, authorization, reliable messaging and policies.