System Design Problems