Okay I've been a little quiet on this one, but fair play to the folks over at Macehiter Ward-Dutton they've got some momentum behind the anti-SOA 2.0 bandwagon with their petition, I liked it so much I voted twice (or to be honest I pressed the back button then say "yes" to the POSTDATA dialog). Now personally I'd say that SOA already includes Event Driven elements as that is just one communication style that is completely independent of the basic idea of SOA which is thinking about services and particularly business services.
However one question is why we should worry about a branding slogan, well I think we should not just because when you look at "Web 2.0" people are talking about doing research into collaborative technologies... then it turns out they mean looking at Wikis (imagine being commissioned to do that, researching a wiki... how long would you spend on the beach?). But also because if we start now we'll have a major revision everytime we add something new.
There are two clear worlds here, the one (like the OASIS SOA RM) which talks about SOA as a concept and an architectural element, and predominately focused on changing the way people think about systems. This world considers SOA to be as much about the business as it is about IT.
The second is the vendor world, this is about flogging product, which means shiny buzzwords and a constant desire to feel new. I don't blame Oracle for claiming SOA 2.0, if they hadn't one of their competitors would have. But all of these pronouncements needs to be married to the fact that they are about selling product. "Yes last years product was SOA, but this years is SOA 2.0", hell its even a full number jump so the upgrade will be harder. SOA column inches are currently dominated by this deliberate miscommunication so people need to understand the motivation behind it.
Being rude the challenge I see is this...
SOA by vendors = RPC
EDA by vendors = messaging
SOA by sentient human beings = Business service architectures, structure and thinking differently.
So vendor SOA and vendor EDA are just two communication patterns when using proper SOA.
Why do I say that SOA is about thinking different? Because I have to deliver projects, and if we don't think differently then its the same old crap that failed last year. Why do vendors attach products to buzzwords and generate more buzzwords? Because they want people to buy their next product which needs to appear sufficiently different and important in relation to the last. I want to deliver a project, they want to deliver a product, understand the motivations and you understand the messaging. Why should you take the SOA as thinking message over SOA as product? Well if you want to build a product you shouldn't. If you want to deliver a project however then we are sitting in the same boat.
If we allow SOA 2.0 then we'll get the following
- SOA 1.0 = RPC
- SOA 2.0 = RPC + EDA
- SOA 3.0 = RPC + EDA + ERP
- SOA 4.0 = RPC + EDA + ERP + "Semantic"
- SOA 5.0 = RPC + EDA + ERP + "Semantic" + Agents
- SOA 6.0 = RPC + EDA + ERP + "Semantic" + Agents + Business Service Modelling (I hope to god this bit arrives earlier)
- SOA 6.0 = RPC + EDA + ERP + "Semantic" + Agents + BSM + Service Portfolio Management
So SOA 2.0? No thanks, not until the technology allows me to create a proper business service architecture and then drive that through my projects and organisation, that really would be something worthy of a full revision number.