Learn Labs
2. Defining Nonfunctional Requirements

2. Defining Nonfunctional Requirements

This chapter covers four of them:

"The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made." — Alan Kay

Functional requirements = what screens, what buttons, what each operation does. Nonfunctional requirements = fast, reliable, secure, legally compliant, maintainable. Usually unwritten because they seem obvious — and just as important: an app that is unbearably slow or unreliable might as well not exist.

This chapter covers four of them:

  1. Performance — defining and measuring it
  2. Reliability — continuing to work correctly even when things go wrong
  3. Scalability — efficiently adding capacity as load grows
  4. Maintainability — keeping it workable long-term