Functional Requirements vs Non-Functional Requirements
Aspect | Functional Requirements | Non-Functional Requirements |
---|---|---|
Definition | What the system must do — specific behaviors or functions. | How the system should be — qualities or constraints of the system. |
Focus | Features, tasks, and business logic. | Performance, usability, reliability, security, etc. |
Examples | - User login/logout |
- Create, read, update, delete (CRUD) data
- Generate reports
- Process payments | - System must respond within 2 seconds
- 99.9% uptime availability
- Data must be encrypted
- Support 1000 concurrent users | | Measured By | Functional correctness, completeness. | Performance metrics, SLA, security audits, etc. | | Impact | Directly impacts what the system does for users. | Impacts user experience, system stability, and compliance. | | Documented As | Use cases, user stories, feature lists. | Performance requirements, security requirements, compliance standards. | | Verification | Functional testing, user acceptance testing. | Load testing, security testing, usability testing. |
Real-life analogy:
- Functional: "The elevator must go up and down when a button is pressed."
- Non-functional: "The elevator must arrive within 10 seconds, support up to 15 people, and have safety features." !
Tags
System Design