There are several things that go into determining a batteries life span. A good charging system and low average temperature helps a battery last.
In general most chemical reactions will happen twice as fast for every increase in temperature of 10 degree Celsius (18 degree Fahrenheit), or happen half as fast for every decrease of 10 degree Celsius (18 degree Fahrenheit). So for every decrease of 10 degree Celsius that a battery is kept at it should last twice as long. This explains why batteries in vehicles in a hot climate like Arizona may only last two year, while the same battery in a cold climate Canada may last 10 years. Also, something as simple as keeping the vehicle in a garage that is cooler because it is built into a hill side can mean a significant improvement in the life of a battery, compared to parking it in the hot sun all summer. The average ambient temperature that the battery is exposed to plays a huge role in determining the life expectancy of a battery.
And when a battery does fail, it can be over several days, or all at once. I replace the batteries in both of our vehicles when they get to 4.75 years old even if they test good. With the climate here in Pittsburgh Pennsylvania they seam to last at least 5 years, and putting a new battery in at 4.75 years is cheap insurance against getting stranded.