Sunday, November 19, 2006

An Ounce of Action is Worth a Ton of Theory

At the end of a very nice Chinese meal earlier this week my fortune cookie informed me that “An Ounce of Action is Worth a Ton of Theory”. I was dining with a friend who works for a large Enterprise IT Consultancy and we had been discussing why the practical up take of SOA appeared to be falling behind the massive amount of theory that was being created on the topic…….

I think the following are contributing to the problem :-

Issue 1 :

Some Enterprise Architects are trying to define all of the solutions to all the problems (lots of Theory) without actually putting this in to practice. If I talk to another EA who tells me all about their fantastic SOA, but then goes on to tell me their organisations is yet to deploy (or even model) as single widely used and available service or service based solution…..I think I will go mad.

Issue 2 :

The Enterprise Architects in most companies are doing a pretty poor job of explaining to the business what they can achieve with SOA, what does a business person do with flexibility and agility ? In most cases SOA does not provide ultimate flexibility and agility which means that the business departments who do think of something to do with SOA are often met with the Little Britain phase “COMPUTER SAYS NO”.

So we have a situation where not enough practical experience is being created within the IT department and a business who want innovation and change but don’t have any really good examples or patterns to follow….this all leads to too much theory and not enough action.

One simple chart that I use to explain what could be done with SOA is shown below.

I have translated the EA words of Flexibility and Agility into the simple to understand questions of :-

a) Do you want to create or automate a process and if so how complex is that process (and do you understand it !!!) ?
b) How complex (or pretty) does the user interface need to be ?

By plotting the answers to these questions on the grid we start to get an idea of how simple or hard the process of enabling this for the business is going to be.

As with all things (and SOA is no different) it is best to start small and grow as you gain experience and the great thing with SOA is that most of the skills you learn doing the simple stuff form part of the complex stuff as well. You might choose (and probably will) to use different technologies to enable each of these quadrants, I think this is OK as long as you keep a lid on too much technology proliferation. Each time you actually do something in the real world you will learn what works and does not for you – oh and you might actually add some value to the business ☺