Scope Decomposition
1 min read
Break a vague problem into functional requirements, non-functional requirements, and explicit non-goals.
Break a vague design problem into functional requirements, non-functional requirements, and explicit non-goals before drawing any boxes.
How It Works
Scope decomposition is the first 3-5 minutes of a system design interview. You take a broad prompt ("Design Twitter") and break it into: (1) functional requirements — what the system must do, (2) non-functional requirements — latency, availability, consistency guarantees, and (3) non-goals — what you explicitly will not build. This frames the rest of the interview and shows the interviewer you can prioritize.
Real-World Example
When designing Uber, strong scope decomposition separates: rider requests a ride, driver accepts, real-time matching, ETA calculation, payment (functional) from 99.99% availability, <2s matching latency (non-functional) and explicitly excludes food delivery, freight, and multi-stop rides (non-goals).
Test Yourself
Given "Design a ride-sharing service," list 3 functional requirements, 2 non-functional requirements, and 2 non-goals.
Get notified when we launch
One email when the full practice product is live. No spam.