Tension emerges between SOA and mashup camps

SOA and mashups serve the same purpose, don't they?

The promise of mashups -- that lightweight front-end apps that can be assembled by business users -- adds a new, more palatable dimension to SOA.

Mashups make SOA real to business users - nothing wrong with that

The mashup market appears to be gaining traction. Dion Hinchcliffe reports fast-breaking progress in mashup adoption across the industry. He noted that there were at least nine different announcements around Web-based mashups coming out of the recent Web 2.0 conference.

However, some SOA purists have said that mashups are still too ungovernable for enterprise SOA environments. And, now, there seems to be an opposing point of view from the Web 2.0 camp as well -- that SOA poisons the mashup well.

As Dave Linthicum points out in a new post, some Web 2.0 proponents don't think SOA should be brought into the mashup world -- it will ruin all the fun. He even has heard from people "who did not want the term 'mashups' sullied with the term 'SOA.'" As Dave observed, "the core message is that they view SOA as something that's "enterprisy," and mashups as much more innovative and not really enterprise related." Hmm.

When Dave and I participated on a panel in January's Open Group confab, Dave said he considered mashups to be a perfectly legitimate part of service oriented architecture. In reference to resistance from mashup proponents to SOA, Dave said both need to come together:

"Not sure I agree with that. While indeed mashups are an innovative way of building very cool applications from many available resources, visual and non-visual, they are still composite applications. While I'm seeing mashups that are completely Web-hosted, I'm seeing more and more that are a mix of Web and enterprise resources, as well as mashups that are true "'enterprise mashups.'"

No question about it, mashups have been gaining ground in the enterprise world. But along with that, some tension has arisen between proponents in the two camps, as Dave had also observed. As Tony Baer puts it, a "kind of a love/hate relationship between SOA and mashups." SOA is seen as complex, while mashups seen as an easy shortcut to agility. "Heck, you can lay chunks of web objects atop each other without having to do all that architecture 'stuff.'"

Tony adds that contrary to what some believe, mashups do not present an alternative or competition to SOA composite apps. As he puts it, "the approach is not a black and white SOA vs. mashups choice for enterprise integration, but rather, use of mashups for the last mile of integration that may, in many cases, utilize data services, feeds, or other sources that more often than not are exposed as Web or RESTful Services."

And, may I add, the ease and lightweightness of mashups make it easier to sell the concept of SOA to the business. Because now they can see and feel and touch service orientation. It's no longer an abstract architectural concept; they can actually create services on their own. (Here's a case where good governance comes in -- can't you just see business users, having had a taste of their own service creation, going wild?)