
Brooks’ law is an observation about software project management according to which “adding manpower to a late software project makes it later”. It was coined by Fred Brooks in his 1975 book The Mythical Man-Month. According to Brooks, there is an incremental person who, when added to a project, makes it take more, not less time. Further reading: Brooks Law, Wiki and The Mythical Man-Month, Wiki.
There are several observations to take note of:
- It takes some time for the people added to a project to become productive.
- Existing resources, diminish their productivity educating new workers.
- New workers may negative contributions, for example they introduce bugs.
- Communication overhead increases as the number of people increases.
- People added spend time trying to find out what everyone else is doing.
- Adding more people to less divisible tasks, won’t decrease task duration.
- Adding additional workers get in each other’s way, if unable to contribute.
It’s worth reiterating that Brooks’ Law is for projects running late. If a product is being developed by an Agile team then surely over-runs won’t happen?! 🙂
The formula to calculate the communication channels:
Group intercommunication formula: n(n − 1) / 2.
Example: 50 developers give 50 · (50 – 1) / 2 = 1225 channels of communication.
For example, it’s recommended that a Scrum Team consists of between 3-9 members, not including the SM and PO.
Therefore, if you have 9 team members, you will have 36 communications channels.
To get this answer, subtract 1 from 9, which equals 8. Multiply 9 by 8, which equals 72. Divide by 2, which equals 36 communications channels.
– example of brooks law
