The mod-pubsub blog has a pointer to a very enlightening interview with IBM’s Bob Sutor. Here is his explanation about what an SOA is:
SOA has been around a long time, since the client server in the ’80s. As a subset of object-oriented programming and design, SOA was clearly in there. And there was a glimmer of this a few years ago, when Java was coming out. Certainly, everyone in the universe used Java. But it was the Internet and XML that made this fully possible, so today, it is characterized by saying it is distributed computing. It is loosely coupled, which means that you have very little knowledge about the actual construction of the services. It is defined by standards that have actual descriptions of how you talk to it and how it talks back to you. You use the same language to talk about all these interfaces—specifically, this is Web services description language, and that means that you can start leveraging common registries for services. You can look up, “How do I talk to this version of a particular thing?” Tools start becoming much simpler, because if everything you want to use is described in the same language, you can start dragging and dropping these different things and threading them together much more easily.
Er … Huh?