If functional requirements define the product's key features (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 these, 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'll buy a guitar with a bad finish, strings that break too quickly, and no strap button? You can play such an instrument, but will you enjoy it as Slash enjoys his Gibson Les Paul on the stage? The answer is obvious: no.
So, don't take this in a way that working on non-functional requirements is less significant. Remember that user
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 ☯️