If you build it, they will come–not necessarily. Especially if you do not build what the customer is expecting and at his quality level. Everyone wants to have a successful software release. However, if we work from invalid and/or incomplete requirements, the project will fail. Since most errors originate from poor requirements, it is important to scrutinize the requirements before you start building code.