Saturday, June 30, 2007

Why thought is more important than action

I believe the hard part of building software to be the specification, design, and testing of this conceptual construct, not the labor of representing it and testing the fidelity of the representation.
- Fred Brooks - No Silver Bullet

Now that essay is in what I think of as the entrance exam to a job in software, if you haven't read it you really shouldn't be working in computing.

I thought it was worth bringing up again as there have been some bits recently around SOA v BPM which have been misunderstood as me bashing BPM. This isn't the case at all, what I'm saying is that you need to think first before implementing BPM and that SOA represents the best way to create the conceptual construct for BPM, and that BPM is about the labour of representing that construct.

The key here is that the important piece is the thought and planning of that initial piece, not the implementation of the ideas. It is much more valuable and powerful to have the correct conceptual framework before you start on the implementation.

This is why I say that BPM screws up SOA because BPM does not create a conceptual framework, it creates an implementation approach which is a set of steps linked together. There are people who practice true Business Process engineering who create the conceptual framework for process, and to me that looks much like the Business Service approach I try and do in that it considers the parts of the business and their boundaries before worrying about any simple issue of steps.

Hell don't stop at Fred though, Adam Smith apparently has some good ideas as well.

"A journey of a thousand miles begins with a single step" is another famous saying, of course its not actually true, the first thing to work out is exactly where you are going and how to get there otherwise you could spend 40 years just wandering across a pretty small desert.

SOA is about thought, and thought makes better action.

Addition: It appears to be a bigger meme today than normal, someone else is bigging up the book

Technorati Tags: ,


Loraine said...

I hope it hasn't left 15 comments from me. Blogger's not letting me post.

Anyway, hope I didn't cause you too much trouble. Thanks for stopping by IT Business Edge to clarify!

Loraine Lawson

Steve Jones said...

No problems at all :)

Mike Davison said...

I'm an admitted neophyte when it comes to SOA, but I think your point is a good one. The danger in my mind of a strictly BPM based view of SOA is that you'll wind up with "services" that are little more than XML facades slapped on top of today's process steps. No consideration is paid to concerns like granularity, reusability, etc. One could argue that these services are inherently not reusable at all because they are tightly bound to the proccess they're used in.

I also just wanted to say thanks for maintaining this blog and for the excellent book that's available on InfoQ.