The SOA blogs lit up all week with news of the SOA Manifesto.
The SOA Manifesto is a statement on service oriented architecture-"the Bible of the SOA thought leader community," according to Oracle's Jrgen Kress. It's modeled after the Agile Manifesto, and written by a collective that includes a number of big names from the SOA community, such as Joe McKendrick, Anne Thomas Manes and David Chappell.
You can read a complete list of the authors at the bottom of the manifest, or view a picture of everybody on stage at the signing of the SOA Manifesto.
Because I like the name "manifesto"-it brings a certain subversiveness to everything it touches-I've been following the banter over this document. I recognize that manifestos don't have to be subversive, but if they're not, you have to wonder what's the point?
Anyway, after trying to sort out the significance of the SOA Manifesto, I've come to two conclusions:
The SOA Manifesto strikes me as a nice summary of what many have said about SOA for some time now. It's a style of architecture that requires enterprise-wide change and it can be achieved through a variety of standards and technologies. Also, it should be about strategically supporting the business.
What's more interesting to me isn't the statement itself, but the controversy this very non-controversial manifesto seems to be generating.
For instance, apparently there's been some mummers about the very first statement, "Service orientation is a paradigm that frames what you do. Service-oriented architecture (SOA) is a type of architecture that results from applying service orientation."
Yes this opening statement may seem like a statement of the blindingly obvious, like 'the sky is blue' or 'the ocean is wet' or 'Hollywood makes crappy movies' or something like that. But there was a lot of discussion around this statement, and the intent was to dispel the notion that SOA is this thing that you do or can buy. In fact, vendors and consultants have been abusing these semantics and milking millions from customers with this notion for years.
Ironically but not surprisingly, the manifesto attempts to clarify what SOA means, but in the process, it managed to raise more questions about what the individual statements mean, according to this InfoQ's Mark Little:
If the SOA Manifesto is to become widely accepted, the SOA community must first agree upon how these statements should be interpreted. If not, the discussions will never come to an end and the SOA Manifesto will not be able to contribute to filling the empty void of the SOA community: a shared understanding of the core values of SOA.
But the most scathing criticism I've seen to date was written by Dr. Jim Webber, global head of architecture for ThoughtWorks. Webber called the SOA Manifesto "snake oil to give the vendor community a thin veneer of respectability atop their increasing bureaucracy, deteriorating levels of innovation, and increasingly painful pricing models."
He was unimpressed by the signatories, too, writing:
I don't think I see too many signatories of the Snake Oil Agreement that work with organisations (though there are one or two, I'll call these "the good, but chronically optimistic, guys"). I see a lot of people who sell to organisations, but that's helping in much the same way that if you suffered an injury, I kicked you in the general direction of a hospital.
He also took aim at what the document said about prioritizing "intrinsic interoperability over custom integration":
Another disingenuous point I believe. This is telling you to buy kit for "intrinsic" interoperability rather than doing it yourself with anarchic(!) technology like the Web. If you really believe in this value, then bin your ESB and embrace a platform which has intrinsic interoperability by dint of a few commonly accepted formats and protocols. .... Furthermore it's ironic that 'intrinsically interoperable' systems like ESBs need development effort to get them installed and running and plumbed into their victims, which seems to me a lot like custom integration between system and ESB anyway. Whoops!
Like I said, I must be missing something. It seems pretty benign to me-although, I did wonder what's the point? Other than creating still more discussion and disagreement over the meaning of SOA, and thus, no doubt making many business-savvy tech folks want to forget the whole thing, I'm not sure what the purpose is. I honestly can't imagine companies using this in any concrete way, other than to reinforce the importance of strategy over tactical.
But read it for yourself and decide.