I'm half way through reading Scott Berkun's
The Art of Project Management which describes how to write specifications and determine when projects have finished, amongst other things. I also recommend
his essays although they don't address the questions you ask here.