The document discusses different types of requirements for software systems including:
- User requirements written from the user's perspective
- System requirements that expand on user requirements for system design
- Software design specification requirements that provide an implementation-oriented description for developers
- Functional requirements that describe system services/functions, and non-functional requirements (NFRs) that define overall system qualities
Some examples of NFRs discussed are performance, reliability, usability, efficiency, maintainability, portability, scalability, and security. The document also describes problems with natural language requirements and different classifications of NFRs.