There are many methods for doing this, in fact there is a whole subject dedicated to this kind of estimation taught in colleges. People end up developing PER and Gantt charts to find estimates for deadlines and slack time for features. Pick any appropriate life cycle model and see what kind of evaluations help you out. Internet should be a good place to look for this.