Les Hatton

When developers forget to prototype

The people working on the NHS computer system may be repeating some classic mistakes

Written by Les Hatton

This week’s column about fallibility and computer systems was inspired by the gently bubbling controversy over the NHS “Connecting for Health” system, grandly and completely inaccurately described as “the biggest computer program in the world ever”.

It is in the nature of human beings that we cock everything up the first time. We also cock everything up the second time. After that success is a possibility.

Building big computer systems is actually surprisingly simple if you accept this premise: you will not get it right first time and almost certainly not the second time either. I have been involved in software development projects big and small many times, a reasonable percentage of which have succeeded and I can’t recall a single occasion when we actually knew what we were doing at the start. On one or two memorable occasions, we didn’t know what we were doing at the end either.

The point is that prototyping to understand a problem is an intrinsic part of software development, more so than in any other engineering profession because we really do not understand what we are doing at the beginning.

When I see student projects handed in with a requirements stage, a specification stage, an implementation stage and so on, all carefully partitioned using one or other of the numerous software process models, I honestly weep for them. The real world is almost never so clear and it’s not just software development. One example I frequently use is Beethoven’s Fifth Symphony, the da-da-da-daaaa one. It is a masterpiece of organisation which uses elements of mathematics in its structure (it’s built on the sonata principle with sections of length deliberately very close to the “perfect ratio” of mathematics).

So how many of you think that it fell out of Beethoven’s head in this form? I hope none. The beauty and awesome structure of the Fifth emerged by systematic refinement. We know this because Beethoven kept early versions, which were frequently naive and relatively formless. The greatness emerged from a process of prototyping. If a software developer had written Beethoven’s Fifth, it would have been version 1. Very, very few musicians go with the first version. Software developers nearly always go with the first version even though experiments in the 1980s showed that this is a stupid thing to do.

So what’s the problem with the NHS development? Quite simply, we don’t know what the hell they are doing and there are few signs of prototyping. The controversy is over whether it should be independently reviewed or not. How could this possibly be controversial? All such projects should be reviewed. If they were, and the dictum of “never right the first time” was followed using open prototyping, we wouldn’t have quite so many, many disastrous projects.

Two of the clearest signs that projects are going awry are a) the results are kept under wraps and b) talking heads tell you that there’s no problem. It’s your money, shout about it.

Tags:

reader comments

related articles

 

related whitepapers

today's top stories

WiMax: Threat or opportunity?

We examine the merits of WiMax and its benefits relative to other wireless technologies in our latest video 13 Oct 2008

Learning from the credit crunch to avoid a broadband crunch

While it might be the most pressing issue de jour , the financial system isn’t the only area where government needs to... 10 Oct 2008

How careerism can warp IT procurement

Many working in IT put their career interests before those of their employer when weighing up purchasing options 10 Oct 2008

The definitive guide to software development

Five key trends and five best practice tips to help you improve your programming capabilities 09 Oct 2008

Computing podcast - IT implications of the banking crisis, and the FSA clamps down on IT security

We discuss the effect of shotgun mergers and acquisitions on financial services IT staff, and examine the industry regulator's plan to fine directors for information security breaches 09 Oct 2008

Advertisement

Newsletter signup

Sign up for our range of FREE newsletters:

Existing User

Newsletter user login:

Jobs

Related jobs

Job of the week

Job alerts

Sign up here

Find your next job


IT Salary Checker

Check salary here

Advertisement

White papers

Search white papers

Top categories

VPN, Extranet and Intranet Solutions

WAN/ LAN Solutions

Network Security

Interoperability-Connectivity

Grid/ Utility Computing

Latest poll

Are you worried about your job prospects in IT over the next 12 months?

Are you worried about your job prospects in IT over the next 12 months?

Will the economic crisis affect your job prospects?

Previous poll results

Latest audio and video articles

Remote workerVideo

WiMax: Threat or opportunity?

We examine the merits of WiMax and its benefits relative to other wireless technologies in our latest video 13 Oct 2008

programming codeVideo

The definitive guide to software development

Five key trends and five best practice tips to help you improve your programming capabilities 09 Oct 2008

Latest in-depth articles

Financial Services Authority buildingAnalysis

FSA threatens executives with fines

Senior management to be held accountable for security lapses at banks 09 Oct 2008

Comment

Broadband must be a spending priority

For the economic health of the nation, the government would do better to bankroll an optical fibre rollout rather than prop up profligate banks 09 Oct 2008

Advertisement

Primary Navigation