Follow Us on Twitter

Introduction to Service Oriented Architecture (SOA)

When the entire fraternity of the web world was engrossed with plethora of personalization activities like streaming videos through YouTube, networking through MySpace, collaboration through blogs and wikis etc. The next wave of technological innovation arrived almost unnoticed. The next wave is the dramatic move towards the Service-Oriented Architecture (SOA). And it is here to stay!

SOA has become more of a buzzword in recent times. But there remains a lot of confusion about the proper understanding of the meaning of SOA. To explain by means of human example, we can say that different applications need to talk to each other for communicating important data. These applications are like people from different regions of the world who speak different languages, who do not understand the language of people from other regions.  So, no communication can take place between these people due to this language problem. Here in comes the gentleman who plays the role of an interpreter. He provides different services like e.g. takes the message from one application and passes it on to the other in a language which is understandable to it.

This is only the tip of the iceberg. To understand it in more detail we need to delve into the technical depths of SOA.

SOA architecture can be thought of as a framework in which many loosely coupled services are available in the network. When I say services, it means independent sets of functionalities. It can be anything like filling out and application form or opening and online account etc. The SOA framework builds application from these independent services. These independent services talk to each other through protocols. Now in case a business system requirement needs to be designed based on SOA, the independent set of services are combined to be structured in such a manner that the business process gets it’s intended shape. This is generally done by an expert. And this process of linking and sequencing the services to emerge into a business process is known as orchestration.

To make the SOA architecture work efficiently one needs to ensure few things like an existence of communication protocol for integration between applications in different platforms and the interoperability. The other factors which are the driving forces behind the SOA architecture concept are reusability, granularity, modularity, portability, interoperability etc. When we say driving force what we mean is that these are the principles which provide the base for designing SOA architecture.

SOA is a vast and continuously evolving concept and explaining the technical details is not the purpose of this article. Rather the intention is to give a conceptual understanding of the SOA framework. To take the understanding to the next level we can say that SOA is a paradigm which talks about blending varied capabilities from the ambit of divergent ownerships. This concept of discovering and using the varied capabilities available in the network seems to be the way ahead for the business process applications. The use of SOA leads to cost-effective and faster response in the dynamic market place. It provides greater flexibility and re usability. SOA also provides agility to the businesses thus providing the value proposition.

However everything is not hunky-dory. SOA implementation may lead to problems related to managing services metadata as managing the interaction of services is a tough ask. The task of managing becomes more cumbersome as the services’ sources vary from one provider to another. The scenario becomes more skewed with the lack of trust between the various vendors. Another key issue that beset the SOA implementation is the lack of proper testing in the SOA domain. A need for development of testing tools still remains unsatisfied and this is an unfortunate scenario as the need to capture the reason for failure quickly and correct it cannot be overemphasized in this highly competitive business scenario where companies cannot afford to loose business for a considerable amount of time due to system failure. Other challenges are also there in terms of levels of security, interoperability and vendors.

This is just the beginning of the SOA revolution. The expediting of the software engineering approaches to use this technology will occur as the applicability and demand of SOA rises as it is doing at the moment. SOA is an exciting beginning to a disruptive technology and it will definitely revolutionize the way applications are built in the internet domain.

Related

Tags: , , , , , , , , , , , , , ,
Subscribe to Comments RSS Feed in this post

7 Responses

  1. Good one.. would have loved more on it.. flow is good.. worth reading and recommending…

  2. The article is written in a simple manner which contributes to the understandability of the topic.I am sure it will definitely help all those non-technical persons who might have been confused about what SOA is prior to reading the article.However the need of diagrams will help in understanding it better .
    Overall the article is very well written and hope to see some more from ur side in the near future.
    Well done Pradipta ….keep it up

  3. Simple yet effective.
    Will be waiting for the further build up on the topic

  4. The article is so simple and good that it creates the hunger from inside to know about SOA in detail.It will be beneficial if you describe it in more detail with some diagrams and frameworks so that it can be understood in a better manner.

    All in all a nice piece of juicy technical blog. Hope to see more in recent times from your side.

  5. Very useful content. This is certainly a major trend not noticed by several computer users. The article is crafted very tastefully. Please try to add some graphics as well. Best Wishes & Congratulations!

  6. The way you have portrayed SOA with smal examples – its fantastic. Any non technical person also can get the idea what SOA means. Your approach to explain thde topic in a simple lighter way is very nice. I was new to SOA but your Blog gave me the first clear concept of SOA which will brush any technical knowledge that I will ain furter. Looking forwward for such blogs. Thanks a lot…….