88Pro Thinking

cat /senthoor/mind | grep thought > blog

Saturday, January 21, 2006

Misuse of Brook's Law

"Adding manpower to a late software project makes it later" – Brook's Law

Scene Setting – A 4 member team in a room, having an emergency meeting to discuss ways to avoid a schedule slippage on a module delivery only one developer is working on currently.

Project Manager: Good morning guys... Give me status update and based on that lets discuss how we can mitigate the risk.

Developer: As you know, there have been some unexpected delays due to reasons 1,2 and 3, and I think I wont be able to finish the task in 5 remaining days. I would at least require 2 more days.

After 15 minutes of discussion...

PM: Ok, we will add another person to this module to fast track it, is there any sub component of the module which the new guy can help you out with?

Developer: Ya, there is, if someone can do subcomponent x which is scheduled for allocated 2 days, I can meet the deadline.


One smart guy in the room: We all know the famous Brook's law that adding man power to a late software project makes it later, I can't believe even after it's documented clearly and stated regularly why people still don't understand putting more people is not going to work!!! My god, we never learn the lesson.

I have seen lot of those smart guys (including myself) who have made that final remark quoting Frederic Brook when projects are in critical stages. What Brook said was absolutely true, indeed 9 mothers cant give birth to a baby in a month. Adding more people to a project also introduces new complexities, like communication, co-ordination, etc...

We should be clear that Brook's experience was drawn from a very large project, the development of OS/360 which he lead at IBM.

[Quote]
There wasn’t an exact number of developers who created the OS/360, but it’s in the 10,000 range. Which would make sense if it would take one man 5000 years just to develop what IBM accomplished in 10 years with 10,000 people. Asides from it being grossly over time, the budget was over spent by millions of dollars.
Exact figures of the number of lines of code, but the amount of system resources that it was estimated to use was initially 16K, but after the final version it jumped to 64k.
[Qoute]
[Source]


When a very small team (1 to 3) working on a component, blindly stating Brook's law is not helpful. If a subcomponent can be developed in isolation, specially by a member who is very familiar with the code base adding that developer will definitely shorten the schedule.

I don't want to reproduce Mythical Man Month here again, however my advice is before stating the Brook's law, think for a second whether its applicable for the “very small” software project you are working on. Most of the time (not all the time) it turns out, it might be not. Lets not misuse Brook's experience will ya.

posted by 88Pro / Saturday, January 21, 2006

This page is powered by Blogger. Isn't yours?

doteasy.com - free web hosting. Free hosting with no banners.