Functional requirements describe product capabilities—things that the product must do for its users or allow its users to do with the software. Functional requirements are the doing part of software—the actions, tasks, and behaviors that users generally interact with.
Nonfunctional requirements are properties that the product must have that may not be evident to the user, including quality attributes, constraints, and external interfaces:
Quality attributes
Ask Why Five Times As users explain the task, ask “why?” up to five times in succession to verify the necessity of each task. (This can reveal erroneous user assumptions or detect unnecessary or obsolete business rules.)
Note: Like the three minute rule