High Level System Design Topics