Application Architectures (Client-Server Tiers)

Context: FIT1047_MOC · who does which of the FOUR functions — that single question generates every architecture · echoes tier thinking you’ll meet again in abstraction and later web dev

Quick Revision

  • 🎯 Objective: split four functions between client and server ➔ presentation (UI) · application/business logic (what it does) · data access (how data is managed) · data storage (where it lives).
  • ⚡ Key Constraint: each architecture = one particular split; know the split AND its characteristic problem.

⚖️ Core Decision Matrix

ArchitectureClient holdsServer holdsCharacteristic issue
server-based (“dumb” terminal)— (sends keystrokes)all fourserver bottleneck; lumpy, expensive upgrades
client-basedpresentation + logic + data accessstorageALL data travels back and forth
client-serverpresentation + logicdata access + storagebalanced load — the classic
thin clientpresentation onlylogic + data access + storageonly the server needs updating ✔
multi-tierpresentationlogic on one server tier, data on anothermore moving parts, best scaling
peer-to-peerevery node holds all four(no dedicated server)each computer is client AND server

⚠️ Common Mistakes

  • 💡 “Thin” describes the CLIENT ➔ thin client = client does presentation only; students invert it under pressure.
  • 💡 P2P isn’t serverless magic ➔ every peer runs server duties locally — data access logic reaching across to other peers’ storage.

🧠 Active Recall