Architecture & Distributed Systems