Thursday, 14 October 2010

Normalisation of Deviance

Piers Bizony's article "Challenging the Establishment" in the 6th September edition of Engineering and Technology introduced me to the phrase "normalisation of deviance"

Essentially, when there is normalisation of deviance people accept the current practice (regard it as normal) despite it deviating from best practice, or they may not realise what best practice is.

If anyone then comes along to change anything, the practitioners of the normalised deviance question the need for change.

"We've been doing this for so long and nothing has broken, so why change?"

Then something catastrophic happens such as the Challenger shuttle exploding because of frozen rubber O-rings causing a leak in the solid fuel booster rockets.

Normalisation of deviance also applies to poor software engineering.

"I've never had to refactor code/write shorter methods/use descriptive names/etc before, so why should I start now?"

"This code was written before and accepted, so why should I change it now?"

It become acceptable that code is hard to maintain because "that's just the way it is".

In software engineering this deviance will manifest itself in high rates of bugs and increased development costs as software maintenance becomes increasingly costly - not as dramatic as a space shuttle exploding.

No comments:

Post a Comment