I was reading more about NFR and I could not find any post in the forum. I checked some articles but it still has some unclear points.
For NFR, if we add them to the user stories, we may need to add the same one to multiple stories. Is that correct? NFR is based on system, safety and etc so isnt it easier to have them as an additional story or anything, and keep them through the project?
What about the development team? How should they deal them in each sprint? They have to assure every increment meets them but how can PO analyze it, if it is done or not? (especially his/her expertise is not IT)
NFR are aspects of the system that are, well, non-functional.
An example of a functional requirement is something like: A user changes her preferences for her account. When she presses the OK button, these changes are persisted. When she presses the cancel button, her current settings remain.
NFR are system requirements that involve system qualities like:
1) a user confirms her change and receives confirmation within 1 second. (Even if 10.000 other people changed their record at the same time)
2) a user enters her credit card number and knows it is save to do so.
3) It it fun to interact with this application
So how do you know your increment is done at the end of the sprint? And how do you know your increment is done for the end user?
For my interest, please tell me more about your application.
If the NFR's are necessary for each increment to be in a potentially releasable state, then they may be specified in the Definition of Done for each increment. The Development Team should take the terms of the DoD into account during Product Backlog refinement and Sprint Planning.
Ian and Christiaan, thank you for the answers.
- Christiaan, I do not have any specific application right now but I asked it based on my previous projects which were like 2 years projects.