AR1: Thinking like an architect: quality attributes and trade-offs

Lesson 5 of 5 · reading 15–25 minutes; practice and project time is on the module page

Rough numbers before designs

🎯You'll be able to

Work out rough capacity figures (requests a second, concurrent requests, storage) from business figures, and use them to rule designs in or out.

🏠The everyday picture

Before booking a wedding hall, you count guests. You don't need the exact number, but 80 and 800 need different halls.

📘What it really is

📝A worked example

Input: 180 orders a minute at peak; each order sends 3 messages; the SMS provider sometimes takes 10 seconds.

Steps:

  1. 180 ÷ 60 = 3 orders a second; 540 ÷ 60 = 9 messages a second.
  2. If the order waits for its message: in-progress orders = 3 × 10 = 30 at a slow moment, each holding memory and a connection.
  3. If the message is handed over and the order doesn't wait: in-progress orders = 3 × 0.5 = 1.5 (with a 500 ms deadline).
  4. Conclusion: not waiting for messaging matters more than adding servers.

Expected output: two figures (30 against 1.5 in progress) that support isolating notifications.

🌍Where it's used

📝Case scenario

A team planned a cluster of servers for a new booking app. A rough estimate showed peak load was 20 requests a second, which one small server handles easily. They launched with two servers for safety and saved months of work; the estimate was labelled and checked after launch.

🖱️Try it

From data/peak-day.csv, find the busiest five minutes and work out the orders a second and the in-progress orders if each took 2 seconds. Success: you show the steps, and round sensibly.

⚠️Common mistakes

🛠️For your project

Project 1's Context includes the peak orders and messages a minute (test 2), which you can turn into the figures above.

✅Quick check

What does Little's law say?

Show the answer

Requests in progress = arrival rate × time each request takes.

Why plan for the peak rather than the average?

Show the answer

Systems fail at the busiest moment, when most customers are affected.

← PreviousDrawing and reading a system
ProLearners Assist