Eigenpoll
: Best Practices for Software Development : Written Requirements and Specs
A fulled written set of functional requirements and technical specifications prior to writing code. Proper planning leads to a more solid and effective solution.