"Adding more people to a delayed software project results in an even longer delay."
But when I know that this law applies, there are exceptions to every law.
Sometimes a project really is not late due to lack of skilled workforce?
"Adding more people to a delayed software project results in an even longer delay."
But when I know that this law applies, there are exceptions to every law.
Sometimes a project really is not late due to lack of skilled workforce?
There are several different points of view for every aspect of a software project; and many of these points are very well grounded. All this diversity can bring the notion that this is a subjective subject where no answer is right or wrong.
In the book where Brooks proposes this law , she figures in the midst of several other short sentences without much explanation . But this sentence itself has a brief explanation in the following paragraph:
"Adding people to a software project increases the total effort required in three ways: the work of repartitioning the project and the disruption that the repartitioning causes, training of new people, and increased effort in intercommunication." p>
On specific communication he speaks in another paragraph that the more people on the project, the greater the cost and the greater the difficulty of communication.
Perhaps Brooks did not rule this out in formulating his law, for in the same book he himself mentions:
"Very good professional programmers are ten times more productive than average programmers *, with the same training and level of experience of two years."
* Here he uses the word "poor" , which I think would be better translated in this case for "mediocre", but it's up to you. >
If he believes this, why did he make the law? Could the project be saved by bringing in more qualified people?
The problem may be identifying qualified people. The mention does not say "most qualified programmers," it says "very good programmers with the same experience and training" . That is: strictly, with the same qualification.
Well, this is only a law because it said it is : D You can apply exceptions as you see fit and probably in your own book you will find text that seems to contradict the law. p>
Some obvious exceptions (easy to work out):
Instead of adding people, you can substitute, not adding communication or management costs.
You can replace with people who already have the proper training, without adding this cost of time and money to the project.
You can delegate already delimited work to new people instead of apportioning the project.
From what I have read and observed, however, no project is returned to the agenda simply by replacing or adding developers. What I have seen is that when a project changes course because there have been substitutions, the first replacement that occurred was that of project management.
And I warn you that you will not find much literature saying to put the most qualified people in the project in order to bring it back to the agenda as this would transfer the blame for the pawn (the programmer) instead of keeping it within the scope of management, which is politically more correct.