Consequences of the Model


I first consider whether we are achieving the result of making more hours available for the product. There are two competing factors:

  • On the one hand, we add hours due to the productivity, however small, of the new team members.

  • On the other hand, training them costs us in productivity on the part of the existing team members.

The equation that relates H, the number of useful hours, to G, P, and D is:

H = 1 + G [P - (1 - P) D].

Note some quick checks:

  • With G = 0, we have H = 1. There is no difference in useful hours.

  • If P = 0, we have H = 1 - DG. Useful hours are decreased by the training drag on the rest of the organization.

  • If P = 1, we have H = 1 + G. Useful hours increase as fast as we grow.

  • If D = 0, we have H = 1 + PG. The gain in productive hours equals the growth times the productivity of the new team members.

  • Finally, when D = 1, we see that H = 1 + G (2P 1). Every hour new team members consume ramping up must be matched by an hour from an existing team member. Unless P is at least 0.5, we don't recoup the hour lost by the existing team member with a new-hire productive hour.

In fact, one can see that we increase the number of useful hours on the product if and only if

P > (1 - P) D.

Note this condition is independent of the growth rate G. That is, you can always get more useful hours by growing faster if you observe this condition on P and D.

Nailing the Multiplier

We can rewrite the equation

H = 1 + G [P - (1 - P) D]

as

H = 1 + GM,

where

M = P - (1 - P) D.

In Figure 22.1, I display the quantity M, which, when multiplied by the growth rate G, will give us the percent increase in useful hours on the product. (Because we are using 1 as the baseline, the term "GM" actually represents the increase "over one," so it is actually a percent increase.)

  • The five white bands to the left correspond to negative multipliers. In this region we see a decrease in the number of useful hours per unit of growth; growing faster in this case actually results in fewer and fewer hours devoted to the product.

  • The other shaded bands represent progressively better scenarios; for example, the first band next to the white region corresponds to an M between 0 and 0.2. In this region we get an average of 0.1 times the growth rate in incremental useful hours; with 30 percent growth, for example, we will achieve 0.1 times 30 percent or 3 percent in incremental useful hours.

  • At the opposite extreme, the dark band at the very right of the chart corresponds to an M between 0.8 and 1.0, so in this region we can assume an average value of around 0.9. For the same 30 percent growth rate, we now attain 0.9 times 30 percent or 27 percent more useful hours on the product.

Figure 22.1. Contour plot of the multiplier M as a function of drag D and productivity P.


To summarize, we see that this multiplier depends on two factors in a non-linear way:

  • P is characteristic of the population of new hires; it estimates their relative productivity during ramp-up.

  • D characterizes our existing organization; it is a measure of our ability to integrate new people efficiently.

What the chart tells us is that if we can keep D small, we can tolerate fairly low P. On the other hand, the higher the value of D, the more sensitive we are to P. This agrees with our intuition.

Useful Hours Added to Product

Now that we understand the multiplier effect, we can plot a simple graph, shown in Figure 22.2, illustrating the percentage increase in useful hours as a function of growth. This is simply linear in the multiplier. Once you know M, you can read off the percentage increase in useful hours by looking up G on the horizontal axis and using the appropriate sloped line for M. The result is read off the vertical axis. Or you can do the reverse: For a required percentage increase in useful hours, you can read off the growth rate required for your calculated value of M.

Figure 22.2. Useful hours added to product, DH, as a function of growth rate G, for various values of the multiplier M.


What About Cost?

Remember that you have to pay for all hours, productive or not. As soon as you have hours that are non-productive, due either to the new team members or to the drag that they cause, the overall productivity of the organization decreases.

What management must consider is what constitutes a reasonable trade-off. You produce your product faster because you are devoting more hours to it, but in doing so you are making the product more costly to produce, because the overall productivity of the organization is lower due to training the added team members. The management balancing act consists of deciding how much time is worth how much cost. For many projects, especially in software, the labor content represents the preponderance of the cost, so these arguments are cogent.[4]

[4] And, of course, one has to be sure that all this happens under conditions of "equal or better quality." A more costly product brought to market faster may not be a good thing if the overall quality suffers.

The total number of useful hours that one has dedicated to the product is

H = 1 + GM.

On the other hand, the new total number of hours we are paying for is

T = 1 + G.

So the new overall productivity of the organization is just

N = H / T,

or

N = (1 + GM) / (1 + G).

We can plot this relationship to see how the overall productivity varies as a function of M and G. This is shown in Figure 22.3.

Figure 22.3. Contour plot of new overall productivity (as a percentage of baseline) as a function of the growth rate G and the multiplier M.


The zone to the right is "good." That is, we have a productivity that is between 95 - 100 percent of our base productivity. At the other extreme, our overall productivity has dropped to between 70 and 75 percent of the baseline. Note that the best way to guard against precipitous drops in productivity is to grow slowly, say no more than 20 percent. If we stay under 20 percent growth, we can guarantee that overall productivity will not drop below 85 percent regardless of the multiplier; it won't fall below 90 percent so long as M is at least 0.4. On the other hand, at 20 percent growth or more, we start to become very sensitive to M.

As a side note, if you can keep your M at 0.85 or higher, you can also stay in the 95 percent productivity zone regardless of the growth rate. Achieving an M of 0.85 is a real challenge, as you can see from Figure 22.1.

What about the labor cost to produce the product? If we are putting H useful hours into the product per unit time, then the product will be completed in 1/H the time. But each unit of time is now costing us (1 + G) dollars, so the new total cost is (1 + G) / H. This is just the inverse of the overall productivity. The idea that cost and productivity are in inverse proportion to each other appeals to our notions of good sense.

Figure 22.4 shows how product cost increases with M and G.

Figure 22.4. Contour plot of percentage cost increase as a function of growth G and the multiplier M.





The Software Development Edge(c) Essays on Managing Successful Projects
The Software Development Edge(c) Essays on Managing Successful Projects
ISBN: N/A
EAN: N/A
Year: 2006
Pages: 269

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net