What is the difference between a functional and a non-functional requirement?
A functional requirement says what the system does — the user can reset a password. A non-functional says how well — within two seconds, for ten thousand concurrent users, accessible to a screen reader. Non-functional requirements are the ones that get left out and then cause a rewrite, because they constrain architecture rather than behaviour.