Aside from Brooks’s Law, Fred Brooks is also famous for another so-called “law” in software engineering: the No Silver Bullet argument.

There is no single development, in either technology or management technique, which by itself promises even one order of magnitude [tenfold] improvement within a decade in productivity, in reliability, in simplicity.

Brooks forwarded this argument in a 1986 paper called “No Silver Bullet – Essence and Accident in Software Engineering”. The “silver bullet” refers to silver bullets and their magical effect on the otherwise invulnerable werewolves.

Back in those days (as it is now), there were a lot of hyped up tools and technologies that promised to provide productivity gains in the orders of magnitude e.g. expert systems, 4th generation languages, and even object oriented programming. The vendors and tech evangelists proclaiming their virtues make you feel like they’re convincing you that these are the “silver bullets” that could finally defeat the werewolves of software development e.g. project overruns, defective programs, and so on.

Brooks attacks those claims by pointing out that most of the “easy” problems involved in software engineering have already been addressed at that time, and that the remaining problems are inherently very complicated such that a single technology wouldn’t be enough to deal with all of the aspects of the problem.

Basically, this just means that if a vendor or some technology evangelist would come out and say that their product or their technique would provide tenfold or even just twofold improvement in productivity, always treat them with a great amount of skepticism.

True, there have been cases wherein a technology or technique has provided such gains to certain companies (and hopefully we’ll get to cover them later on in this blog), but for almost all hyped tech, this two-decade old argument still holds up.

Tagged with →  
Share →

Leave a Reply