Comments (2)
  • Add a Comment
  • Edit
  • More Actions v
  • Quarantine this Entry

1 KeithCollyer commented Permalink

This is a great blog, thank you. <br /> I want to add one thing. NFRs do not exist in isolation, each and every NFR is only relevant when related to one or more FRs. One way that you can sensibly mitigate the impact of NFRs is to working out the highest level of requirement to which each applies and ensure that they are linked to that level. For example, you may well have different performance requirements for different functions. <br /> Having said that, some NFRs really do apply to the whole system, though in practice this is the minority. Every system has a top-level function ("do the job"), just associate with that.

2 NarySubramanian commented Permalink

Great post, Professor! We use NFRs every day of our life - which dress should I wear, what food should I eat, which car should I drive, what will he/she think of me, and so on - yet, when we develop products and services we don't seem to be concerned about NFRs much. As a user, we seem to be ready to discriminate between options using NFRs, while we seem to delegate NFRs to the bottom of the to-do list while developing products/services (there are programming books that recommend adding security at the end!).