Skip to content

Latest commit

 

History

History
11 lines (10 loc) · 823 Bytes

File metadata and controls

11 lines (10 loc) · 823 Bytes

Overview of System Design

  1. Gathering Requirements:
    • Define functional and non-functional requirements for a simple system like a URL shortener.
    • Identify constraints such as data storage, scalability, and high availability.
  2. Design High-Level Architecture:
    • Use tools like draw.io or Lucidchart to create a high-level architecture diagram for the system.
    • Include components such as frontend, backend, database, and caching layer.
  3. Explore Trade-offs:
    • Discuss trade-offs in choosing a relational database vs a NoSQL database for the system.
    • Create a document explaining decisions made based on scalability and consistency requirements.