- TCP/IP as the network infrastructure to connect machines to each other.
- HTTP as the wire transport protocol.
- WSDL to describe a service so that it's clear what services are available and how to call them.
- XML as the standard payload to ensure that any system can understand a message
- SOAP as the payload standard to deliver requests to a service and to deliver responses from the service.
I have since had conversations with people from various organizations, typically the bigger ones like IBM, who talk about their Service Oriented Architecture based around WebSphere MQ. When I point out that this is almost totally a proprietary implementation, they tell me that what they put on the end of an MQ queue acts as a service, therefore their proprietary infrastructure is a SOA. I have heard this argued since by organizations keen to jump on the next hype cylce by reinventing their architecture as a SOA in this case.
At the end of the day, there have been well structured application systems for many years that exposed 'services' which were called by a number of different applications. They were called in a totally proprietary manner but based on the previous rational, we have had SOAs for as long as I can remember.
For me the value that SOA was to bring to the table was the ability to integrate easily between systems no matter what the architecture. It now seems that the term has become a dirty word some what and no wonder we hear the expression 'SOA What ?' because vested interests have taken the original value and corrupted it to meet their needs to join the hype cycle.
Given that SOA has become such a loose term, how can we refer to systems that implement a SOA using open, Web Services standards like WSDL and SOAP. A 'Standards Based SOA' perhaps ?
Best regards,
John - The SOA Gateway