3. High-level design