Key Points

  • Requirements for a software system set out what the system should do and define constraints on its operation and implementation.

  • Functional requirements are statements of the services that the system must provide or are descriptions of how some computations must be carried out.

  • Non-functional requirements often constrain the system being developed and the development process being used. These might be product requirements, organizational requirements, or external requirements. They often relate to the emergent properties of the system and therefore apply to the system as a whole.

  • The requirements engineering process includes requirements elicitation, requirements specification, requirements validation, and requirements management. ...

Get Software Engineering, 10th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.