Every software product needs to be validated and verified. Here's the difference in a nutshell:
Validation: Are we building the right thing?
Verification: Are we building the thing right?
All important scenarios have been described
No self-contradictions
Exactly one system is defined
The system defined is the system the client needs
Can the system actually be implemented?
Can we demonstrate that the requirements have been met?
Can requirements be traced to system functions and vice-versa?