SOA- What is it?
Post date: Mar 28, 2012 8:04:52 PM
I didn't find a common definition of SOA. That's why I updated this post several times to put what others are saying about SOA. In my understanding SOA which stands for service oriented architecture is a way, style to use your IT assets (software, hardware, networking or any other) as a service. There services can be published on a shared repository from where consumers can get information about available service ( means they can brows service) and then through that information they can invoke service and place their request. One need to take care of these published services because people are using them. So first of all they (service producers) should adhere to certain contract and should conform to some standards otherwise consumers will be impacted and so business too.
Now after looking at above mentioned description we can figure out following things:-
1. There is a service provider
2. There is a service consumer
3. There is a registry / repository from where people can know about published services.
4. There must be a governance body and governance plan to control service production the service quality.
Here are some definitions of SOA
According to OASIS web site "Service Oriented Architecture (SOA) represents a collection of best practices principles and patterns related to service-aware, enterprise-level, distributed computing".
Source :- http://www.oasis-open.org/committees/tc_cat.php?cat=soa
According to The Open Group web site "Service-Oriented Architecture (SOA) is an architectural style that supports service orientation.
Service orientation is a way of thinking in terms of services and service-based development and the outcomes of services".
In msdn architecture center forum one has asked this question "Service Orientated Architecture is being touted as the next big thing in the IT world. I decided to do my masters dissertation around SOA. I was quite surprised to find that there is no clear definition of SOA. As a start point I am trying to come up with a definition of SOA that will be used to inform the rest of my research." He further says "Can you offer a short definition of SOA?"
According to IBM web site "Service Oriented Architecture (SOA) is a business-centric IT architectural approach that supports integrating your business as linked, repeatable business tasks, or services"