16 October 2007

In defence of complexity - part 1

By Andrew Clifford

Although we aspire to build simple IT solutions, many arguments suggest that this may not be possible.

We have been exploring a hypothesis about making IT much simpler. We started with the view that, for good engineering reasons, we have designed systems based on shared layers of capability, and that these are the root cause of major management problems in IT. IT management techniques do not solve the problems and, by increasing our tolerance to them, dig us deeper into the problems.

We can address the underlying architectural problems by encapsulating technology layers inside systems and by aligning IT systems with business owners. This fixes the major problems. In the long run it also dismantles our view of IT as a specialist activity, and replaces it by IT subsumed into everyday business management.

This is heresy because it challenges the technical, managerial and organisational orthodoxies of IT.

There are many counter arguments to this hypothesis. Some of the counter arguments are good, and some are subtle and clever. But I will start with some of the counter arguments that I personally think do not hold water.

I think these arguments are wrong because:

Having covered what I believe are spurious arguments, I want to cover some good arguments. These all ask, "Is it feasible and worthwhile?"

Next week I will continue this argument by covering some of the more subtle forces that encourage complexity.