Reproduction is an interesting analogy for software development, but like all metaphors it eventually fails.<p>For instance there is the change of feature set as pointed out by m0nastic. Large projects tend to be very flexible in features over their development life, which is odd because usually its not the end user requirements that are changing.<p>Another thing is varying programmer qualities. Some programmers can bang out a baby in 9 days. Some require 90 months to make the baby (hint: don't whinge about your hiring praxctices, man up and get rid of these ones). Some are completely infertile (fire these ones with extreme prejudice). Some project a field of radiation that will not only prevent themselves from making the baby, but will kill all babies in a 5 mile radius (do the world a favour: take these ones out back and shoot them, and then burn the body - <i>do not promote them to management!</i>).<p>Continuing the reproduction metaphor, Yak Shaving can be considered similar to Onanism. While some people might not be able to make babies, they might be master craftsmen when it comes to building cribs. Some people might be bad programmers but really good at changing nappies... without these people you will be buried in a mountain of... 'cruft'. :D