Dion Hinchcliffe writes:
Are we heading towards an architectural singularity in the software industry? Sometimes it looks that way. If you do a superficial comparison at least, Web 2.0 is all about autonomous, distributed services, remixability, and is fraught with ownership and boundary/control issues. And yet, Service-Oriented Architecture (SOA) is all about, you guessed it, autonomous, distributed services, composite functionality, and is fraught with ownership and boundary/control issues. Sound similar, no?
It does seem that we have a classic case of fractal architecture on our hands. Is Web 2.0 actually the most massive instance possible of service-oriented architecture, realized on a worldwide scale and sprawling across the Web? The answer folks is, apparently so.
I’ve been thinking about this carefully for several weeks now as the similarities seemed to inexorably call to each other as I worked with each of them in turn (disclaimer: I’m a SOA architect by trade). Both Web 2.0 and SOA are already slippery, nebulous concepts yet there are unmistakable patterns within each that actually are very tightly related, though wrapped in slightly different cloth. Each encourages the liberation of the underlying functionality of software systems by providing open access to everyone that needs it. Both warmly embrace Web services and the aggregation of existing functionality into new solutions. And Web 2.0, according to O’Reilly, looks at Data as Next Intel Inside, making large, back-end database driven functionality a core competency. SOA totally gets this as well. And both Web 2.0 and SOA provide the building blocks for creating people-centric processes starting at the scale of an organization and going up.
Peter Rip adds:
Computing architectures and social impact are separable concepts. While computing informs social interaction, and vice versa, to define a Web 2.0 app by its reliance upon or enablement of the users seems to politicize technology. The PC gave computing independence to the worker, but “personal empowerment” wasn’t an attribute to define what was a PC app and what wasn’t. PC apps ran on PCs – by definition.
Dion’s post does an excellent job of really placing Web 2.0 technologies into a larger technological context, without the user consequences being part of the definition. He does a much more articulate job of saying what I have been thinking for a while. Web 2.0 is a lighter weight version of SOA. RSS/REST is the new EAI.