Documents don't kill understanding. Documents in our American culture kill understanding.
Why do people who specialize in bending words forget to transfer meaning?
The problem with lengthy requirements documents are
- They never tell the whole story no matter how much you write
- The users of these documents (programmers) never ask any questions because its all right there in the spec
- The writer of said document never questions if his intent was understood because its all right there in the spec
Conversations leading to acceptance tests are better for specifying a project because:
- Conversations don't inspire us to use 25 cent words that even we are fishy on the meaning of
- You are more likely to ask a question of a person than you are of a piece of paper
- Understanding is best reached through a series of questions asked and answered than a document read over ten times
Dan say's its ok to use functional specs and use cases to organize your thoughts. I agree with him if these things are for your eyes only. I wasn't born in 1950, and I haven't watched "Tron" enough times to be able to think in terms of "the system shall..."
In Joel's perfect world, functional specs can be used to communicate design. Joel, I think you may be the only person on earth who can pull this off.
I like user stories and acceptance tests for communicating design because:
- They are light-weight enough not to kill conversation
- They allow you to focus on only what matters right now
Aren't there published studies to the fact that most human brains can only deal with 3-5 pieces of information at a time?
This does not mean that I am advocating throwing out design and design review. What is does mean is that I strongly advocate doing Just In Time Design.