0
0
HLDsystem_design~12 mins

Requirements gathering (functional and non-functional) in HLD - Architecture Diagram

Choose your learning style9 modes available
System Overview - Requirements gathering (functional and non-functional)

This system helps teams collect and organize requirements for software projects. It supports capturing both functional needs (what the system should do) and non-functional needs (how the system should perform or behave).

Key requirements include easy input of requirements, categorization, and clear visibility for stakeholders.

Architecture Diagram
User
  |
  v
Web Interface
  |
  v
API Server
  |
  v
Requirements Database
  |
  v
Notification Service
  |
  v
Stakeholder Dashboard
Components
User
actor
Person who inputs or reviews requirements
Web Interface
frontend
Allows users to enter and view requirements
API Server
service
Processes requests and manages business logic
Requirements Database
database
Stores all functional and non-functional requirements
Notification Service
service
Sends alerts to stakeholders about updates
Stakeholder Dashboard
frontend
Displays organized requirements and status to stakeholders
Request Flow - 6 Hops
UserWeb Interface
Web InterfaceAPI Server
API ServerRequirements Database
API ServerNotification Service
Notification ServiceStakeholder Dashboard
Stakeholder DashboardUser
Failure Scenario
Component Fails:Requirements Database
Impact:New requirements cannot be saved; existing data is inaccessible
Mitigation:Use database replication and backups; cache recent requirements for read-only access
Architecture Quiz - 3 Questions
Test your understanding
Which component stores the functional and non-functional requirements?
ARequirements Database
BNotification Service
CAPI Server
DStakeholder Dashboard
Design Principle
This architecture separates concerns by using dedicated components for user interaction, processing, storage, and notifications. It ensures scalability and clear responsibility boundaries, which helps manage both functional and non-functional requirements effectively.