On ZDNet, Robin Harris prognosticates about the eventual failure of Enterprise SOA on his blog.  His article is full of inaccuracies and flawed logic.  I will point out some of the most obvious.

WTF #1 

In his post, he states:

“…there is no way for enterprise IT to monetize the advantages of SOA. Without that, it is game over.”

There are two assumptions here: both of them very poor.

Assumption 1: If your SOA doesn’t save you money, it’s ‘game over’

SOA is not, and never was, about saving money.  An inexperienced novice may suggest that idea, but no one who has ever implemented a service oriented business app would, and certainly no one who is responsible for a SOA infrastructure.  SOA is about business agility.  If you deliver agility, SOA pays for itself overnight.  If you don’t, you’ve wasted the time and money of your employer.   

Assumption 2: SOA cost savings cannot be justified since IT is paid for by taxes.

Not all IT groups are run the way that Mr. Harris suggests that they are.  Many IT groups do ‘charge’ for their services (although rarely do they charge the full cost).  In fact, there are a great many articles and posts that recommend aligning IT to the business by using an effective chargeback model.  In this space, the cost of IT is clear to the business, as is the need to cut it back. 

This, of course, is a spuruous argument, since cost savings has nothing to do with SOA

WTF #2  

Another quote in a long line of flawed statements from Mr. Harris’ blog:

“SOA is about providing services for applications. So how do you measure success?”

Once again, the author appears to think that we would go to all this trouble just to provide services to applications.  That is the silliest thing I have ever heard.  What application ever paid for anything!

We do SOA to kill overlapping and redundant applications.  We do SOA to delete multiple redundant data stores.  We do SOA to improve data integration.  We do SOA to highlight process overlaps.  We do SOA to deliver consistent experience to our customers and partners. 

WTF #3  

Another quote from Mr. Harris, while I’m on a roll:

“If an application is relying on a dozen independent services whose timing and delivery are dependent on a dozen different infrastructures, that application can only be as fast as the slowest service “

That is true if all your services are synchronous.  Most true Enterprise Services ARE NOT Synchronous.  Therefore, this statement is simply not true.

I review and oversee service development.  When I find a service that is synchronous, I treat it as a ‘warning flag.’  I ask for a detailed design review to uncover any flawed assumptions the developers used.  Most of the time, I can successfully move them to an async service by simply changing the assumptions of the service. 

PEOPLE ARE ASYNC.  We are “store and forward” and “I’ll get back to you on that” and “I trust you will handle this.”  We run large and complex infrastructures, made up entirely of other people, using async communications.  (We call those organizations “businesses” but we could just as well call them “armies” or “governments” or “charities”).

WTF #4  

Just to cap off Mr. Harris’ bizarre tirade, he offers up this beauty:

“SOA is fundamentally about making enterprise IT cool like the web, which is a lost cause. “

Give me a break.  I don’t get paid for cool.   I don’t want to get paid for cool.  If I wanted cool, I would hire some 20-something consultant in a black turtleneck to come in an make a pitch for Web 2.0.  I sure as heck wouldn’t try to rally an 6,000 person IT organization around the goals of reducing time to value, reducing data redundancy, improving business intelligence, or reducing operating overhead for an overlapping and overly complex application portfolio.

And I sure as heck don’t think SOA is cool.

His heart appeared to be in the right place… now if we can locate the brain…    

To be fair, what I think Mr. Harris was trying to say was this: cost cutting comes only after the business can fairly see the costs of IT and can offer their input into specific measures for cutting IT costs.  If that were the point of his post, he would find me to be a supporter and fan.  I agree.  In Microsoft, our IT budget is a blended mix of operating cost via a Tax model and business funded expenditures via a direct sponsorship (pay as you go) model. As a result, at least SOME of the costs of IT are visible.  We would do well to make more of them visible.  Regardless, we get many of the benefits of ‘business ownership of expenses’ as a result.  The business leaders scrutinize the IT Project Portfolio with a sharp eye and an accountant’s pencil.  Everything has to be justified. 

Unfortunately, this model solves some problems and creates others.  If every business leader spends money only on their own, short term needs, then the enterprise needs are rarely met.  While the system has its benefits, it also has its flaws.  Chargeback is far from a silver bullet. It can solve some problems, and create others that are just as tenacious, just as insidious, and just as expensive, as the IT-as-a-tax model.   

WTF #5 

If he were just talking about the benefits of the IT-chargeback economic model, Mr. Harris would be making a useful, if somewhat uncontroversial, statement.  On the other hand, Mr. Harris decides to compare the benefits of an IT economic model with efforts in systems architecture and proceeds to announce that various architectures “aren’t the answer,” as though to state that the one silver bullet to solving all IT problems is a chargeback model.  

I really don’t know what to say to that except to point out the obvious: he is comparing tomatoes to trebuchets.  Architecture does not solve the same problems as a chargeback model would.

In his last paragraph, this odd juxtaposition is most clear:

“Prices aren’t a perfect method of allocating resources, but they are the most effective tool we’ve got. SOA isn’t the answer, just as ILM, OOP, client server and all the other nostrums peddled through the years weren’t either.  “

I guess the only rebuttal I can offer for such a bizarre comparison is to point out that chargeback models for SOA are fairly simple to implement… and can be quite accurate given a reasonable security model. 

Mr Harris: you can have your cost model, and I can do it on top of SOA better than any of the other architectures you mention.  Perhaps the next time you decide to launch in to a critique of how vegetables make poor siege weapons, you will think about what it is you are comparing. 

By Nick Malik

Former CIO and present Strategic Architect, Nick Malik is a Seattle based business and technology advisor with over 30 years of professional experience in management, systems, and technology. He is the co-author of the influential paper "Perspectives on Enterprise Architecture" with Dr. Brian Cameron that effectively defined modern Enterprise Architecture practices, and he is frequent speaker at public gatherings on Enterprise Architecture and related topics. He coauthored a book on Visual Storytelling with Martin Sykes and Mark West titled "Stories That Move Mountains".

3 thoughts on “Bad assumptions yield false conclusions”
  1. >Once again, the author appears to think that we

    >would go to all this trouble just to provide

    >services to applications.  That is the silliest

    >thing I have ever heard.  What application ever paid

    >for anything!

    >

    >We do SOA to kill overlapping and redundant

    >applications.  We do SOA to delete multiple

    >redundant data stores.  We do SOA to improve data

    >integration.  We do SOA to highlight process

    >overlaps.  We do SOA to deliver consistent

    >experience to our customers and partners.  

    These two lines right here have done more to explain SOA to me than the other 20 – 40 hours I have spent in contact with the idea over the last 4 years.  I’ve seen demos and power points, I’ve read articles and blog posts, and I’ve made architecture a major side study in my career.  In all of that time, no one has ever laid out the 30,000 foot view in such clear and concise terms.

    I would love to hear Carl and Richard over at dotnetrocks talk with you for an hour on the subject.  I find the biggest value when I hear someone talking about scenario’s where technology X would be a good thing, and then compares them with scenarios where X would be a *very* bad thing.

    Kind of like a few years ago, when the meme of, "Use remoting here, here and here, unless you have this, this or this going on; in almost all other cases, use web services" explained remoting and web services in terms of each other.  SOA is obviously still a miss-understood beasty and could use a similarly simple compare and contrast model to determine appropriateness.

    Just a thought, and thanks for adding some clarity to the conversation.

  2. I appreciate your thoughtful response. I have a couple of comments.

    First, enterprise IT is a high-volume manufacturing business. I hear some lip-service given to business agility, but the bottom line for IT guys is that the systems stay up and the stuff they’ve committed to gets delivered. Agility means change and IT guys don’t like change. The LOBs like agility, and when they need it they go outside the IT group.

    Second, while I wasn’t explicit about it, the chargeback model I have in mind is a cell-phone model, where ideally every packet, disk I/O and compute cycle gets charged on a TOD and QOS rate schedule. This micro-granularity both enables and incents consumers of IT services to really understand their requirements and costs. Under the current system, such as you describe at Microsoft, marginal costs are buried, leading to over consumption of valuable resources.

    The business of IT is broken: they can’t charge for what they do and the LOBs don’t understand the costs of their demands. While SOA has technical merit and some applications, it can’t pay its way because it isn’t priced. Foggy notions like "agility" mean too many things to too many people to help.

    Admittedly, this is a radical critique. Except it is in favor of pricing and transparency and against the current centrally-planned economies of IT organizations.

    Regards,

    Robin

  3. Mr. Harris,

    You were nicer than I was.  On re-reading my response, I was unduly harsh.  I apologize.

    I am intrigued by your idea of charging by the ‘cell phone model.’  I’ll have to think about that, and perhaps I’ll look up articles you may have written on the subject.  

    As for SOA paying for itself, that I can show.  Not difficult.

    As for IT being broken, I’m a little less harsh than you.  I think IT can do a better job of exposing true costs and controlling economies.  Perhaps a billing model based on TOD and QOS would help.  I don’t know.  I’d love to hear of a case study from a firm that tried it.  

    That said, the billing model solution won’t fix all the problems.  There are still silo apps and bad integration and poor data quality issues.  SOA doesn’t address the alignment problem.  It is not supposed to.  It’s busy addressing all that other stuff.

    And to be fair, I still maintain that if you are going to create an economy dependent on ‘pay as you go’ billing, you need to do it on SOA.  Your solution depends on my technology, Mr. Harris.  

Leave a Reply

Your email address will not be published. Required fields are marked *

3 × 2 =

This site uses Akismet to reduce spam. Learn how your comment data is processed.