Most of the IT guys must have heard the term “SOA”, but there are very few who understand the concepts of it. There are many aspects to SOA in various standpoints. For example a view on SOA can be different from a Business owner to a Technical architect. SOA is not simply a “Web Service”. It is a design paradigm—to develop software as a service.
In technical perspective, it is to expose application functions as services so that the various applications can communicate each other regardless of the various platforms and boundaries. It is an architectural approach which matured from component oriented development and object oriented development.
In business perspective, it is an application design paradigm which will eventually increase the business ROI and reduce the TTM (Time to Market). Business process changes can be easily reflected on the application functions with minimal time & effort. It can also reduce the cost of application maintenance and integration.
SOA is not just a technical artifact—it is a design paradigm which embraces separation of concern and reuse.