Non-Functional Requirements

Non-Functional Requirements (NFR): {{PROJECT_NAME}} 
 
 Project: {{PROJECT_NAME}}
 Version: {{VERSION}}
 Date: {{DATE}}
 Author: {{AUTHOR}}
 Status: Draft | In Review | Approved
 Reviewers: {{REVIEWERS}} 
 
 Document History 
 
 
 
 Version 
 Date 
 Author 
 Changes 
 
 
 
 
 0.1 
 {{DATE}} 
 {{AUTHOR}} 
 Initial draft 
 
 
 
 

 1. NFR Overview 
 
 
 
 Category 
 # Requirements 
 Highest Priority 
 Owner 
 
 
 
 
 Performance 
 {{COUNT}} 
 {{HIGH/MED/LOW}} 
 Tech Lead 
 
 
 Scalability 
 {{COUNT}} 
 
 Tech Lead / DevOps 
 
 
 Availability 
 {{COUNT}} 
 
 DevOps 
 
 
 Security 
 {{COUNT}} 
 Critical 
 Tech Lead + Security 
 
 
 Reliability 
 {{COUNT}} 
 
 Tech Lead / DevOps 
 
 
 Usability 
 {{COUNT}} 
 
 Designer 
 
 
 Compatibility 
 {{COUNT}} 
 
 Tech Lead 
 
 
 Maintainability 
 {{COUNT}} 
 
 Tech Lead 
 
 
 Compliance 
 {{COUNT}} 
 
 Tech Lead + Legal 
 
 
 Data 
 {{COUNT}} 
 
 Tech Lead 
 
 
 
 
 2. Performance Requirements 

 
 
 
 ID 
 Requirement 
 Metric 
 Target 
 Measurement Conditions 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-P01 
 Page load time (initial) 
 Time to Interactive 
 < 3 seconds 
 4G connection, cold cache 
 Lighthouse / WebPageTest 
 Must Have 
 
 
 NFR-P02 
 Page load time (subsequent) 
 Time to Interactive 
 < 1.5 seconds 
 Warm cache 
 Lighthouse 
 Must Have 
 
 
 NFR-P03 
 API response time (standard) 
 p95 response time 
 < 500ms 
 Normal load ({{CONCURRENT_USERS}} users) 
 APM tool / k6 
 Must Have 
 
 
 NFR-P04 
 API response time (complex queries) 
 p95 response time 
 < 2 seconds 
 Normal load 
 APM tool 
 Should Have 
 
 
 NFR-P05 
 Database query time 
 p95 query time 
 < 100ms 
 Normal load 
 DB monitoring 
 Must Have 
 
 
 NFR-P06 
 File upload throughput 
 Upload speed 
 {{SIZE}}MB in < {{TIME}}s 
 Single user 
 Load testing 
 {{PRIORITY}} 
 
 
 NFR-P07 
 Search response time 
 p95 response time 
 < 1 second 
 Normal load 
 APM tool 
 Should Have 
 
 
 NFR-P08 
 Report generation 
 Completion time 
 < {{TIME}} seconds 
 Normal load 
 APM tool 
 Could Have 
 
 
 NFR-P09 
 Core Web Vitals: LCP 
 Largest Contentful Paint 
 < 2.5 seconds 
 Mobile, 4G 
 Lighthouse 
 Must Have 
 
 
 NFR-P10 
 Core Web Vitals: CLS 
 Cumulative Layout Shift 
 < 0.1 
 Any device 
 Lighthouse 
 Must Have 
 
 
 
 
 3. Scalability Requirements 

 
 
 
 ID 
 Requirement 
 Metric 
 Launch Target 
 12-Month Target 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-S01 
 Concurrent users 
 Simultaneous active sessions 
 {{X}} users 
 {{X}} users 
 Load testing (k6/JMeter) 
 Must Have 
 
 
 NFR-S02 
 Peak load handling 
 Requests per second 
 {{X}} RPS 
 {{X}} RPS 
 Load testing 
 Must Have 
 
 
 NFR-S03 
 Data volume growth 
 Database size growth 
 {{X}}GB/year 
 {{X}}GB/year 
 Storage monitoring 
 Should Have 
 
 
 NFR-S04 
 API rate limits 
 Max requests per user/hour 
 {{X}} requests 
 {{X}} requests 
 API gateway metrics 
 Must Have 
 
 
 NFR-S05 
 File storage growth 
 Storage volume 
 {{X}}GB 
 {{X}}GB 
 Storage monitoring 
 Should Have 
 
 
 NFR-S06 
 Auto-scaling response 
 Time to scale out under load 
 < 2 minutes 
 < 2 minutes 
 Cloud console metrics 
 Should Have 
 
 
 NFR-S07 
 Geographic distribution 
 Regions supported 
 {{REGIONS}} 
 {{REGIONS}} 
 CDN configuration 
 {{PRIORITY}} 
 
 
 
 
 4. Availability Requirements 

 
 
 
 ID 
 Requirement 
 Target 
 Measurement Period 
 Exclusions 
 Priority 
 
 
 
 
 NFR-A01 
 System uptime SLA 
 ≥ {{99.5 / 99.9}}% 
 Monthly rolling 
 Scheduled maintenance 
 Must Have 
 
 
 NFR-A02 
 Scheduled maintenance window 
 Max {{X}} hours/month 
 Monthly 
 {{PREFERRED_WINDOW}} 
 Must Have 
 
 
 NFR-A03 
 Maintenance notification lead time 
 ≥ 48 hours notice 
 Per event 
 Emergency patches: 4 hours 
 Must Have 
 
 
 NFR-A04 
 RPO (Recovery Point Objective) 
 Max {{X}} hours data loss 
 Per incident 
 N/A 
 Must Have 
 
 
 NFR-A05 
 RTO (Recovery Time Objective) 
 System restored within {{X}} hours 
 Per incident 
 N/A 
 Must Have 
 
 
 NFR-A06 
 Database backup frequency 
 Every {{X}} hours 
 Ongoing 
 N/A 
 Must Have 
 
 
 NFR-A07 
 Backup retention 
 {{X}} days rolling 
 Ongoing 
 N/A 
 Must Have 
 
 
 NFR-A08 
 Disaster recovery test 
 Pass DR drill 
 Annually 
 N/A 
 Should Have 
 
 
 
 SLA Calculation Reference: 
 
 
 
 Uptime % 
 Annual Downtime 
 Monthly Downtime 
 
 
 
 
 99.9% 
 8.7 hours 
 43.8 minutes 
 
 
 99.5% 
 43.8 hours 
 3.6 hours 
 
 
 99.0% 
 87.6 hours 
 7.3 hours 
 
 
 
 
 5. Security Requirements 

 
 
 
 ID 
 Requirement 
 Category 
 Target / Standard 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-SEC01 
 Authentication method 
 Auth 
 {{JWT/OAuth2/OIDC}} + MFA optional 
 Code review + pentest 
 Must Have 
 
 
 NFR-SEC02 
 Password policy 
 Auth 
 Min 8 chars, 1 uppercase, 1 number, 1 special 
 Automated test 
 Must Have 
 
 
 NFR-SEC03 
 Session management 
 Auth 
 Timeout: 30min idle; absolute: 8 hours 
 Automated test 
 Must Have 
 
 
 NFR-SEC04 
 Data encryption in transit 
 Encryption 
 TLS 1.3 minimum 
 SSL Labs scan (grade A+) 
 Must Have 
 
 
 NFR-SEC05 
 Data encryption at rest 
 Encryption 
 AES-256 for PII; database encryption 
 Infrastructure review 
 Must Have 
 
 
 NFR-SEC06 
 Input validation 
 Injection Prevention 
 All inputs sanitized server-side; parameterized queries 
 Code review + SAST 
 Must Have 
 
 
 NFR-SEC07 
 XSS prevention 
 Injection Prevention 
 CSP headers; output encoding 
 OWASP ZAP / DAST 
 Must Have 
 
 
 NFR-SEC08 
 CSRF protection 
 Injection Prevention 
 CSRF tokens on all state-changing requests 
 Code review 
 Must Have 
 
 
 NFR-SEC09 
 Rate limiting 
 DDoS/Abuse 
 API: {{X}} req/min per IP; login: 5 attempts/15min 
 Load testing 
 Must Have 
 
 
 NFR-SEC10 
 Audit logging 
 Compliance 
 All auth events, data mutations logged with user + timestamp 
 Log review 
 Must Have 
 
 
 NFR-SEC11 
 Dependency security 
 Supply Chain 
 No known critical CVEs in dependencies 
 Automated scan (Snyk/Dependabot) 
 Must Have 
 
 
 NFR-SEC12 
 Secret management 
 Secrets 
 No secrets in code/git; use env vars or vault 
 Code scan + git history check 
 Must Have 
 
 
 NFR-SEC13 
 Role-based access control 
 Authorization 
 Principle of least privilege; no role escalation 
 Code review + penetration test 
 Must Have 
 
 
 NFR-SEC14 
 Security headers 
 HTTP Security 
 HSTS, X-Frame-Options, X-Content-Type-Options 
 securityheaders.com scan 
 Must Have 
 
 
 NFR-SEC15 
 Vulnerability scanning 
 Operations 
 Automated scan in CI; critical issues block deploy 
 CI pipeline 
 Should Have 
 
 
 NFR-SEC16 
 Penetration testing 
 Operations 
 Annual external pentest 
 Third-party report 
 Should Have 
 
 
 
 
 6. Reliability Requirements 

 
 
 
 ID 
 Requirement 
 Metric 
 Target 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-R01 
 Application error rate 
 5xx errors / total requests 
 < 0.1% 
 APM monitoring 
 Must Have 
 
 
 NFR-R02 
 Client-side error rate 
 JS errors per session 
 < 1% of sessions 
 Error tracking (Sentry) 
 Should Have 
 
 
 NFR-R03 
 MTBF (Mean Time Between Failures) 
 Average time between incidents 
 > {{X}} days 
 Incident tracking 
 Should Have 
 
 
 NFR-R04 
 MTTR (Mean Time To Recovery) 
 Average time to restore service 
 < {{X}} hours 
 Incident tracking 
 Must Have 
 
 
 NFR-R05 
 Data integrity 
 Zero data corruption events 
 0 incidents 
 Database integrity checks 
 Must Have 
 
 
 NFR-R06 
 Transaction integrity 
 Atomic transactions 
 ACID compliance 
 Database tests 
 Must Have 
 
 
 NFR-R07 
 Graceful degradation 
 Partial failure handling 
 Non-critical features fail gracefully; core stays up 
 Chaos testing 
 Should Have 
 
 
 NFR-R08 
 Health check endpoint 
 System health observable 
 /health returns 200 when healthy 
 Monitoring 
 Must Have 
 
 
 
 
 7. Usability Requirements 

 
 
 
 ID 
 Requirement 
 Target 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-U01 
 Time to complete core task 
 New user completes {{KEY_TASK}} in < {{X}} minutes 
 Usability testing 
 Must Have 
 
 
 NFR-U02 
 Error recovery 
 User can recover from any error without help 
 Usability testing 
 Must Have 
 
 
 NFR-U03 
 WCAG compliance 
 WCAG 2.1 Level AA 
 Automated axe-core + manual review 
 Must Have 
 
 
 NFR-U04 
 Keyboard navigation 
 All interactive elements reachable by keyboard 
 Manual testing 
 Must Have 
 
 
 NFR-U05 
 Screen reader support 
 Compatible with NVDA / VoiceOver 
 Manual testing 
 Should Have 
 
 
 NFR-U06 
 Mobile responsiveness 
 Fully functional on 375px–1440px width 
 Manual + automated 
 Must Have 
 
 
 NFR-U07 
 Color contrast 
 ≥ 4.5:1 for normal text; ≥ 3:1 for large text 
 Contrast checker 
 Must Have 
 
 
 NFR-U08 
 Onboarding completion 
 {{X}}% of new users complete onboarding 
 Analytics 
 Should Have 
 
 
 NFR-U09 
 Help / documentation 
 All key features documented in-app or in help center 
 Content audit 
 Should Have 
 
 
 
 
 8. Compatibility Requirements 

 
 
 
 ID 
 Requirement 
 Category 
 Target 
 Priority 
 
 
 
 
 NFR-C01 
 Web browsers 
 Browser 
 Chrome 100+, Firefox 100+, Safari 16+, Edge 100+ 
 Must Have 
 
 
 NFR-C02 
 Mobile browsers 
 Browser 
 Safari iOS 15+, Chrome Android 100+ 
 Must Have 
 
 
 NFR-C03 
 Mobile operating systems 
 OS 
 iOS 15+, Android 11+ 
 Must Have 
 
 
 NFR-C04 
 Desktop operating systems 
 OS 
 Windows 10+, macOS 12+, Ubuntu 20.04+ 
 Must Have 
 
 
 NFR-C05 
 Screen resolutions 
 Responsive 
 375px to 2560px width 
 Must Have 
 
 
 NFR-C06 
 Minimum device specs 
 Performance 
 Works on mid-range 2020+ devices 
 Should Have 
 
 
 NFR-C07 
 Third-party integrations 
 API 
 {{EXTERNAL_SYSTEM}} API version {{VERSION}} 
 Must Have 
 
 
 NFR-C08 
 Email clients 
 Email 
 Gmail, Outlook, Apple Mail, mobile clients 
 Should Have 
 
 
 
 
 9. Maintainability Requirements 

 
 
 
 ID 
 Requirement 
 Metric 
 Target 
 Measurement Method 
 Priority 
 
 
 
 
 NFR-M01 
 Test coverage 
 % of code covered by automated tests 
 ≥ 80% overall; ≥ 95% for critical paths 
 CI coverage report 
 Must Have 
 
 
 NFR-M02 
 Code documentation 
 % of public APIs documented 
 100% of public APIs 
 Code review 
 Must Have 
 
 
 NFR-M03 
 Cyclomatic complexity 
 Per-function complexity 
 Max 10 per function; refactor if exceeded 
 Static analysis (SonarQube) 
 Should Have 
 
 
 NFR-M04 
 Dependency currency 
 % of dependencies on current major version 
 ≥ 80% current; 0 dependencies with critical CVEs 
 Automated scan 
 Should Have 
 
 
 NFR-M05 
 Deployment frequency 
 Time to deploy a bug fix to production 
 < 1 hour from merge 
 CI/CD metrics 
 Should Have 
 
 
 NFR-M06 
 Feature flag support 
 Ability to disable features without deploy 
 Available for all major features 
 Code review 
 Could Have 
 
 
 NFR-M07 
 Logging completeness 
 Log coverage for operations 
 All external calls, errors, and user mutations logged 
 Log review 
 Must Have 
 
 
 NFR-M08 
 Monitoring observability 
 Dashboards for key metrics 
 Dashboards for error rate, response time, uptime 
 Monitoring tool 
 Must Have 
 
 
 
 
 10. Compliance Requirements 

 
 
 
 ID 
 Regulation 
 Applicability 
 Requirement 
 Technical Implementation 
 Priority 
 
 
 
 
 NFR-COMP01 
 GDPR 
 {{YES — if handling EU personal data}} 
 Lawful basis for processing; right to deletion; DPA required; breach notification within 72h 
 User data deletion API; audit logs; DPA in place 
 Must Have 
 
 
 NFR-COMP02 
 GDPR — Cookie consent 
 {{YES — if using tracking cookies}} 
 Explicit consent before non-essential cookies 
 Cookie consent banner; opt-in only tracking 
 Must Have 
 
 
 NFR-COMP03 
 GDPR — Data minimization 
 Yes 
 Collect only data necessary for stated purpose 
 BA review of data model 
 Must Have 
 
 
 NFR-COMP04 
 {{HIPAA}} 
 {{YES/NO — healthcare data}} 
 PHI protection; audit logs; BAA required 
 Role-based access; encrypted PHI fields 
 {{PRIORITY}} 
 
 
 NFR-COMP05 
 {{PCI-DSS}} 
 {{YES/NO — payment card data}} 
 SAQ compliance; tokenization; no card storage 
 Stripe/payment gateway tokenization 
 {{PRIORITY}} 
 
 
 NFR-COMP06 
 Norwegian Personvernloven 
 {{YES}} 
 Alignment with GDPR national implementation 
 Legal review 
 Must Have 
 
 
 NFR-COMP07 
 WCAG 2.1 AA 
 {{YES}} 
 Digital accessibility 
 NFR-U01 to NFR-U07 
 Must Have 
 
 
 
 
 11. Data Requirements 

 
 
 
 ID 
 Requirement 
 Category 
 Target 
 Implementation 
 Priority 
 
 
 
 
 NFR-D01 
 Data retention — user data 
 Retention 
 {{X}} years active; deleted within 30 days of account deletion request 
 Scheduled deletion job 
 Must Have 
 
 
 NFR-D02 
 Data retention — logs 
 Retention 
 Application logs: 90 days; Audit logs: 3 years 
 Log rotation policy 
 Must Have 
 
 
 NFR-D03 
 Database backup frequency 
 Backup 
 Full backup daily; transaction logs every {{X}} hours 
 Automated backup schedule 
 Must Have 
 
 
 NFR-D04 
 Backup encryption 
 Backup 
 Backups encrypted with AES-256 
 Infrastructure config 
 Must Have 
 
 
 NFR-D05 
 Data integrity checks 
 Integrity 
 Database constraints; no orphaned records 
 DB schema + integration tests 
 Must Have 
 
 
 NFR-D06 
 PII identification 
 Privacy 
 All PII fields identified and documented 
 Data dictionary 
 Must Have 
 
 
 NFR-D07 
 Data export 
 Portability 
 User can export their data in machine-readable format (GDPR Article 20) 
 Export API endpoint 
 Must Have 
 
 
 NFR-D08 
 Data anonymization 
 Privacy 
 Anonymize user data in non-production environments 
 Dev/staging data scripts 
 Must Have 
 
 
 NFR-D09 
 Archival strategy 
 Retention 
 Data older than {{X}} years archived to cold storage 
 Archive schedule 
 Should Have 
 
 
 
 
 12. NFR Testing & Verification Plan 

 
 
 
 NFR Category 
 Testing Method 
 Tools 
 Frequency 
 Pass Criteria 
 
 
 
 
 Performance 
 Load testing 
 k6, JMeter, Lighthouse 
 Pre-launch + monthly 
 All NFR-P targets met 
 
 
 Scalability 
 Stress testing 
 k6 
 Pre-launch 
 System gracefully handles 2× peak load 
 
 
 Security 
 SAST + DAST + Pentest 
 Snyk, OWASP ZAP, external pentest 
 CI (SAST), Pre-launch (DAST+Pentest), Annual 
 No critical/high vulnerabilities unresolved 
 
 
 Accessibility 
 Automated + manual 
 axe-core, manual screen reader 
 Per sprint 
 WCAG 2.1 AA 
 
 
 Availability 
 Monitoring + DR drill 
 Uptime monitor 
 Ongoing + annual 
 SLA targets met 
 
 
 Compliance 
 Legal review + audit 
 Manual + automated 
 Pre-launch + annual 
 All compliance items verified 
 
 
 
 
 Approval 
 
 
 
 Role 
 Name 
 Date 
 Signature 
 
 
 
 
 Author 
 
 
 
 
 
 Reviewer 
 
 
 
 
 
 Tech Lead 
 
 
 
 
 
 Business Analyst 
 
 
 
 
 
 Product Owner 
 
 
 
 
 
 AI Director (John) 
 
 
 
 
 
 Client Representative