How can I learn about writing project specs?

requirements, specifications

Solution

Here's Joel's article on Function Design documents.

http://www.joelonsoftware.com/articles/fog0000000036.html

Problem

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?

Original source