Like many people in IT I have been aware of The Mythical Man-Month for a number of years, and few months ago I decided to get a copy and read it for myself.
This book was first published in 1975. I bought the 20th anniversary edition which has been updated in a few places, but in general the book is as it first appeared with some additional material. The author, Fred Brooks, has wide experience in computer hardware and software, and was managed the production of OS/360, the operating system for the IBM 360 mainframe computer.
There are probably two chapters in this book which are best known. The chapter, after which the book is named, The Mythical Man-Month, argues the case that adding more people to an already late project will make it even later. This is now, I think, a generally accepted truth in software development.
The basic premise behind the argument is that some projects are well partitioned and some are not. For example, ten people will dig ten holes in half the time that five people will dig those same ten holes, assuming similar strength, stamina and digging skills.
But Brooks argues that software development is not well partitioned. He points out that it takes one woman nine months to have a baby. Adding another eight women will not reduce the time to one month, it will still take nine months.
There are some aspects of software development that are partitioned. Different people can work on different sub-systems. But the more people you add the more training is required and the more communication is needed between each of the developers.
There is much more to the chapter, and to Brooks’ premise, but you will have to read the book to find out more.
Some writers have argued that Brooks is wrong. Steve McConnell has put together a well argued case that a carefully controlled project is less subject to Brooks’ Law than a chaotic project. But nonetheless, The Mythical Man-Month remains an important article to read and at ponder its implications, especially for project managers.
The second well known chapter is called No Silver Bullet, and this chapter has provided the most argument of all. Brooks states at the beginning of the chapter:
There is no single development, in either technology or management technique, which by itself promises even one order of magnitude improvement within a decade in productivity, in reliability, in simplicity.
Over the next decade, at the end of which he was proved correct, and beyond, Brooks has seen countless rebuttals in letters to journals, academic papers and marketing hype suggesting that he is wrong. Fads have come and gone, but the premise of No Silver Bullet remains: software development is hard work, and no technological breakthrough in the last 30 years has changed that.
Yes, it is an old book. The tools we use have changed dramatically since it was first published, but the problems we face developing software are exactly the same. I heartily recomment The Mythical Man-Month to anyone, programmer, analyst, project manager, who is involved in developing software. Project managers, especially, should be forced to read it every year.