The general rule I was told long ago was that you put another roof on (on top of the existing one) after 10 years, then 10 years after that, strip it all off and re-roof. Repeat. A roof should last 10 years, and you can go two layers thick, but not more. Since a new roof is an expense I'd rather not face more often than every 10 years, I've stuck to that and it's worked out pretty well.