What is your approach to estimation? In our case, we used to use a template based on lines of code, but that's never on the mark when it comes to completion. We are always off the estimate.

What estimation techniques do you rely on?