In addition to functional requirements, also non-functional requirements (e.g., response time, throughput, etc.) have essential impact on the design of distributed systems. In this paper, we identify important bidirectional relations between the requirements stage and the design stage according to these performance related system properties. We present our framework for formalizing non-functional requirements and systematically transform them into a formal and consistent design model. Knowledge about the performance of the distributed system gained by simulation based performance analysis may then feedback to new insights in the requirements stage.