Through the noise of the latest IT hype – Cloud computing – I try to follow the somewhat quiet but lingering discussion around SOA (Service-Oriented Architecture) versus WOA (Web-Oriented Architecture). Just to get grip and understanding if the one (WOA) is the successor of the other (SOA), if the other will slowly fade away, if the two are complementary and if so: what to implement when?
Pretty hard to get hold of where this discussion will end, dealing with two camps that seem to adhere to the yell of “if you are not in favor of us, you are against us”. Fundamentalistic, somewhat evangelistic type of behavior where there is hardly room for nuance.
The SOA camp comprises of people that seem to originate from the enterprise side of IT – preferably the public and finance sector. They wear striped suits and ties and spend their days with talking about heavy transaction based systems, ESBs (Enterprise Service Busses) and that sort of stuff. Serious things for serious people that look seriously all day long. They do not seem to be aware of something like REST (Representational State Transfer) based SOA or WOA. “Mashups? Social Computing? Sorry, never heart of”. And if they do, they downgrade this phenomenon to “something for girls”.
The guys from the WOA camp on the other hand wear trendy jeans, are young and eager, laugh all day long and play around with their iPhones, Twitter and flashy mashups . Life is one big party! They do recognize the SOA camp, however: they make fun of them. Fun of the people that live in the past and deal with difficult SOAP (Simple Object Access Protocol) schemas, expensive ESBs that are bought but hardly used in organizations and the unnecessary complex WS -* (Web Services) protocol stack. They do not seem to recognize all the features that the traditional SOA protocol stack and middleware products have brought us over the years. “Quality of Service? Pfff… (long running) transaction monitoring over the Internet? Sorry, don’t need it; too difficult”. And if they do, they respond to these topics by saying “oh well, the application layer will take care of that or a next version of HTTP (HyperText Transfer Protocol) will solve this”.
Again, it is difficult to see which direction we are going with this. In general the IT industry is very good at creating a hype and replacing it by a subsequent one far before the first one matures. The IT industry is less good at telling why the initial hype was a hype in the first place, why the successor is better and how the good things of the initial one have been captured and migrated to the next one. No, we rather put something completely new in place and forget about the ones we loved before.
But now we have Cloud computing. That’s an interesting one in this discussion. In addition to security and pricing issues, the big challenge for Cloud computing is the integration between what’s running in the Cloud and the enterprise legacy systems running within the corporate firewall. Here the REST based world of the Cloud needs to communicate with the solid SOA/ESB world of the on-premise enterprise software. “Quality of Service? Absolutely need it! BPM over the Internet? A must! Ease of use and the utilization of lite weight web protocols? Want it!”.
In getting Cloud computing to work, SOA will meet WOA. The flashy Internet world will meet and start appreciating the solid enterprise world and its features. And vice versa. The older guys wearing their suits need to work together with the younger generation with their iPhones. Interesting to see what that brings in the SOA versus WOA discussion.