That's unfortunate to say, but, as a PM, I usually come to face situations where the project has fallen behind schedule. Most of the time, the reasons are cumulative small "leakages" which combine themselves to create chaos: few delays in delivery from developers, one team member who gets sick for a couple of days, a purchase order which comes late...

And then, being a System Integrator's employee, instead of abiding to Brook's law

Adding manpower to an already late software project makes it even later.
Frederick Brooks - The Mythical Man-Month

I often feel some pressure to add resources (sometimes untrained) to the project in order to help "sustaining the pace" and crash the schedule. This additional effort is deemed to help catching up with timelines and deliveries to customer. I can see even seasoned practionners support such approaches.

I often answer with Brook's law statement, and usually add that adding resources will decrease the productivity of already working resources on board, and eventually will generate a non budgeted overcost.

Instead of getting nervous each time I hear such a fallacious suggestion, I built an Excel sheet based on the modeling I expose in this article, and use this Excel sheet as a decision tool, to assess quickly if the money invested and the lead time for ramp-up are worth.

The principles of modeling

I designed the modeling to be as close to reality as it can be, whilst letting calculus not being a nightmare: The S-curve. I don't care about the precision, I want to have a rough idea of the additional spending I'll have to book to ensure that team ramp-up is effective.

After a small calculus, I brought in the cumulative productivity model for the trainee as

$$ f(x) = \frac{1}{1+ {\left( \frac{p}{1-p} \right)}^{1 - \frac{2x}{\tau}}} $$

With \(\tau\) being the leadtime necessary to reach \(p\) percents of completion in the training.

Trainee's productivity

I also took into account the fact that when an untrained resource is welcomed in a team, someone coaches him, and has a decrease in productivity which recovers over time. Let's assume that when the coaching starts, the trainer's productivity drops down to \(w\) and increases again up to \(v\) when the trainee has reached \(u\)% of its training completion.

The resulting function is a bit complicated to write down, but is still based on S-Curve equation:

$$ g(x) = \frac{1}{1+ e^{-\beta \left( x - x_{0} \right)}} $$

If you're interested in the full display of the result, you can download the Maple worksheet which displays it. 

Excel does it for you

If you're like me, formulae or Maple sheets are not part of our regular busy days. As Excel is pretty good at performing calculus, I implemented these formulae into Excel, using intermediate cells to make everything readable.

In the worksheet attached, simulation is initialized as such:

  • 10 team members are working smoothly on their current work which is late
  • 5 new and not knowledgable resources are proposed by management
  • You estimate that the ramp-up time necessary to be 95% (\(p = 0.95\)) operational on both project & technology is 4 weeks (\(\tau = 20\))
  • You estimate that supporting resources will see their productivity decrease down to 25% (\(w = 0.25\)) and recover up to 95% (\(v = 0.95\)) once the trainee's productivity has reached 75% (\(u = 0.75\))
Excel then computes and displays the results.
You can use this spreadsheet to simulate any situation you want by adjusting the parameters in the Parameters tab.

Interesting results...

Not valuable?

The results obtained firmly confirm Frederick Brook's law. Adding resources to meet a tight deadline is at best useless, at worst counterproductive. Indeed:

  • Assuming the training takes 20 days, it will take 14 days to the 15 resources to perform the same amount of work that would have been performed by 10 resources only, but costing 70 m*d more.

Cumulated value

  • The cumulated investment for ramping up 5 resources stabilizes around 79 m*d. This means that 88% of the spending is done during the time when the 15 resources produce the same as the initial 10

 Cumulated investment

As a summary, adding resources is a smart move only if there's enough work to feed the bigger team. Otherwise, if resources come to help, then switch to other activities, most of your investment goes up in smoke...

You have no rights to post comments