I recently read through Code Complete, and it recommends that I create a project specification before actually coding.
The book didn't go very far into detail about what 'specs' are, and how they are made. Because this is a crucial part of software development, I would like to know how to create quality specs that are not too exhaustive.
Where can I learn more about software specifications? Or any of the other prerequisites outlined in Code Complete?