SDSystem Design Studio
Search guide and handbook titles, headings, and text
Complete book · 1. Requirements: FRs, NFRs, Constraints, and Assumptions

Your handbook progress

0 of 31 sections complete.

Loading saved progress…

Guided learning paths

Interview preparation

Practice a repeatable design flow and the trade-offs most often explored in interviews.

12 sections · 3–5 hours · 0/12 complete

Continue path
  1. 1. Practical system-design workflow· Not complete
  2. 2. The 12-question system design loop· Not complete
  3. 3. 1. Requirements: FRs, NFRs, Constraints, and Assumptions· Not complete
  4. 4. 2B. Data Modeling, Indexing, and Partitioning· Not complete
  5. 5. 3. Concurrency· Not complete
  6. 6. 4. Transactions and Consistency· Not complete
  7. 7. 5. APIs, Contracts, and Idempotency· Not complete
  8. 8. 6. Messaging and Asynchronous Work· Not complete
  9. 9. 7. Failure Handling and Resilience· Not complete
  10. 10. 8. Scale, Capacity, Performance, and Caching· Not complete
  11. 11. 13. Master System Design Review Checklist· Not complete
  12. 12. Design review outcome template· Not complete

Architecture review

Review an architecture systematically from boundaries through operability and evolution.

17 sections · 5–7 hours · 0/17 complete

Continue path
  1. 1. 1. Requirements: FRs, NFRs, Constraints, and Assumptions· Not complete
  2. 2. 2. Boundaries, State, and Data· Not complete
  3. 3. 2A. Networking and Communication· Not complete
  4. 4. 2B. Data Modeling, Indexing, and Partitioning· Not complete
  5. 5. 2C. Time, Clocks, and Ordering· Not complete
  6. 6. 4. Transactions and Consistency· Not complete
  7. 7. 5. APIs, Contracts, and Idempotency· Not complete
  8. 8. 6. Messaging and Asynchronous Work· Not complete
  9. 9. 7. Failure Handling and Resilience· Not complete
  10. 10. 8. Scale, Capacity, Performance, and Caching· Not complete
  11. 11. 9. Security· Not complete
  12. 12. 10. Observability and Reliability· Not complete
  13. 13. 11. Deployment, Migration, and Evolution· Not complete
  14. 14. 12. Cost, Simplicity, and Operability· Not complete
  15. 15. 13. Master System Design Review Checklist· Not complete
  16. 16. Architecture Decision Record — short template· Not complete
  17. 17. Design review outcome template· Not complete

Agentic systems

Design agent and LLM systems with explicit contracts, failure boundaries, and review gates.

9 sections · 3–4 hours · 0/9 complete

Continue path
  1. 1. 1. Requirements: FRs, NFRs, Constraints, and Assumptions· Not complete
  2. 2. 5. APIs, Contracts, and Idempotency· Not complete
  3. 3. 6. Messaging and Asynchronous Work· Not complete
  4. 4. 7. Failure Handling and Resilience· Not complete
  5. 5. 9. Security· Not complete
  6. 6. 10. Observability and Reliability· Not complete
  7. 7. 15. LLM and Agentic Systems· Not complete
  8. 8. 16. Spec-Driven Development for Agentic Systems· Not complete
  9. 9. 17. Agent-System Design Review Checklist· Not complete

Complete handbook · Section 6 of 31

1. Requirements: FRs, NFRs, Constraints, and Assumptions

System design starts with a clear business need and a requirement baseline. Functional requirements (FRs) define required behavior. Nonfunctional requirements (NFRs) define measurable quality targets. Constraints define boundaries the design must respect. Assumptions are things we currently believe but still need to validate. Architecture trade-offs only make sense when these are visible.

Table · scroll horizontally when needed

ItemSimple meaningExample
FRWhat behavior must exist?An authorized user can cancel a pending order.
NFRHow well must a critical flow or system perform?p95 latency <= 500 ms under the agreed load.
ConstraintWhat boundary is fixed for this design?Data must remain in an approved region.
AssumptionWhat do we believe but still need to prove?Peak load will stay below 300 requests/s for year one.
Acceptance criterionWhat observable condition proves a specific behavior or work item?Cancelled order returns status Cancelled and cannot be shipped.

Terminology note

“NFR” is common software terminology, but standards often speak more precisely about quality requirements and constraints. In this book, NFR means a measurable quality requirement. Fixed mandates and assumptions are tracked separately so they do not disappear inside a vague “NFR” bucket.

Evidence: S1, S2, S46, S47, S53

What good requirements look like

Clear and singular: one requirement should express one understandable need.

Verifiable: define how compliance can be shown by test, analysis, inspection, demonstration, telemetry, or another explicit method.

Traceable: use an ID and link the requirement to its source, design, implementation, and verification evidence.

Feasible and bounded: define relevant load, data, geography, dependencies, limits, and operating conditions.

Owned and prioritized: know who can clarify or change it and how important it is when trade-offs appear.

Assumptions visible: do not baseline a critical assumption as if it were a confirmed fact.

Evidence: S2, S23, S31, S46, S53

Common failure

“Highly available, secure, scalable, fast” is not a usable NFR set. It gives no testable target and no basis for trade-offs.

Checklist

  • Business goal and expected outcome are clear.
  • Functional scope is clear, including what is out of scope.
  • Critical user and business flows are named.
  • Important requirements have stable IDs or another traceable identifier.
  • Requirement source/owner and priority are known.
  • Acceptance criteria or verification method are defined where the requirement needs proof.
  • Expected traffic and peak traffic are estimated.
  • Data volume, growth, retention, and geography are estimated.
  • Latency target is measurable, preferably using percentiles for user-facing paths.
  • Throughput/capacity target is measurable.
  • Availability target is defined for critical flows.
  • RPO and RTO are defined where data loss or downtime matters.
  • Security/compliance requirements are explicit.
  • Cost or budget constraints are explicit.
  • Technology, regulatory, residency, deadline, or organizational constraints are explicit when they are truly fixed.
  • Important assumptions have an owner and a plan to validate or revisit them.
  • Dependencies and third-party limits are known.
  • NFRs are prioritized when they conflict.
  • Each important NFR has a pre-production proof method and, where ongoing compliance matters, a production signal.

Evidence: S1, S2, S23, S24, S31, S32, S46, S53

Practice after learning

Section learning lab

Build the idea, test your recall, and keep page-specific notes.

The canvas is horizontally scrollable on narrow screens. Select a node and use arrow keys or the move controls; dragging also works.

Diagram ready.

Loading saved work…