• I think Steve was paraphrasing Fred Brooks: Adding more people to a late project makes it later.

    The reasons above are pretty accurate and the classic example is 9 woman cannot have a baby in one month. Use that when your boss gets angry.

    The what to do part is interesting. The first thing you need to do is not bother the programmers working on the project. At least not immediately. Then you need a PM to decide if you need to triage things or take a longer term view.

    If this is a short project, meaning due in the next 3-4 months and you realize it's late, then you have a few choices. You can remove any obstacles from the current staff and get them to be more efficient. If that means the CIO needs to make Starbucks runs, let the CIO know that. You're trying to get more productivity, but you don't want to create a death march for the programmers. For a month or so I think you can get some people to be productive at 80-100 hours a week. Most can't. Most don't want to if they have families, so you have to give them an incentive. And no, the fact you pay me isn't an incentive.

    It's hard to bring people on board a project without disturbing those working on things, so that's where the delays get longer. If you've got 6 months or more to get to completion, then maybe you can spare a week or two to get someone up to speed, but that means training. It's not interviewing.

    If you can bring in people to test, to QA, to write modules that someone doesn't have to train them on (as Antares mentioned), then you can do it, but there's probably a cost here somewhere for short term help.

    The whole analysis, figure out what went wrong, etc. is something that I think is better left to a PM or manager without disturbing the programmers. If you need their input, then just wait until they're done. Figuring out how to do it better is for another day.