Service Oriented Architecture

Service Oriented Architecture or SOA for short 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. Service Oriented Architecture is basically an evolution of distributed computing. SOA provides a modularity of business logic, which can be presented as service for clients (client as in client-server architecture). These services are loosely coupled in nature, in the sense the ‘User Interface’ can remain completely independent of the service layer.

Loose Coupling : It is more efficient to reuse the functionality of the existing system rather than building a complete new system. It is not the task the of Tom Dick and Harry to reuse the things easily because they (building blocks) are heavily dependent on each other. There are two types of dependency.

The first one is the real dependency and the second one is the artificial dependency. A real dependency is one in which one system depends on the functionality of the other system. The artificial dependency is the set of factors due to which a system accepts the features or services provided by the other system. But the problem is that we create the real dependency along with the artificial dependency. This is known as loose coupling.

Let’s take an example that includes loose coupling. Suppose you are going overseas for business and you are carrying your power adapter. This is real dependency that your need power. But your adapter’s plug is not getting fit into the outlet, this is artificial dependency. While looking at the power adapter you will notice that some of them are varying in shapes and sizes, while the others are big and bulky in size being used in different country.

The conclusion here is that we can not almost remove the artificial dependency from the real dependency but can be reduce up to its minimum. If we are able to reduce the artificial dependency among the systems, it means we have achieved the loose coupling. Artificial dependencies can be reduced to its minimum but the real dependency can not be altered.

Service Oriented Architecture is nothing but the architectural style to achieve loose coupling among various interactive systems. In the present time most of the organizations are implementing IT systems across their various departments. It is not a big deal, but the challenge is to find the solution that must be flexible, extensible and best fit for the existing legacy system. Its not a good idea to replace a legacy system with the new architecture and it is not only costly but also risky. For such type of problems Service Oriented Architecture (SOA) provides the best solution that is more cost effective


and relatively cheap. Although it is not a new concept but SOAneeds more attention with the advent of platform-neutral data models and platform-independent programs.

Characteristics of Service Oriented Architecture:

• SOA services communicates with messages by using
the XML Schema. Communications among various
consumers, providers and services takes place in heterogeneous environment with little or no knowledge
regarding to the provider.

• SOA services act as a directory listing and are maintained
by a registry within the enterprise. Applications invoke the service by looking up the service in the registry.

• Every SOA service contains the quality of service (QoS)
like security requirements such as reliable messaging,
authentication, authorization and policies associated
with it.

• WSDL is a standard, used for describing the services
as SOA services that includes the platform independent
XML document containing self-describing interfaces.

Why SOA?

SOA is most widely used in the market as it links computational resources and promotes their reuse. SOA is helpful as it responds more quickly and makes costeffective changes according to the market situations. It also simplifies the usage of the existing IT (legacy) assets and interconnection among the assets.
SOA isolates the user from the service implementation in order to run the services on various distributed platform and make it accessible across the network.

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 the
existing applications.
• The training costs are low, so the available labor pool
can be used for running the applications.

Techniques used by SOA to achieve loose coupling among interactive software agents:

• Distribute a small set of simple interfaces among all the participating software agents. The interface contains only generic semantics and should be available globally to all providers and consumers.

August 2007 | Java Jazz Up |28
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40          Download PDF