If functional requirements define the product's key tasks (what does it have to do), non-functional requirements determine the way it should be done (how does it have to do it). Their key difference is that the first ones are vital for the system; without meeting them, your product simply won't work.
Non-functions, in turn, focus on a user experience; the system will work without them. The other thing is that it will lose its meaning
— who'd buy a guitar with a bad finish, strings that break too quickly, and no strap button? You can play such an instrument, but
Gibson Les Paul will always outperform your product. So, don't take this in a way that working on non-functional requirements is less significant. Remember that
user-
centered design rocks: unless the app is
user-friendly, your project will not succeed just as well.
Therefore, only the yin-yang combination of functional vs non-functional requirements matters — one cannot exist without the other ☯️