Performance-aware Component-based Software-Development A characteristic of an engineering discipline is the ability to predict the impact of design decisions. For example, in civil engineering accurate predictions of the impact of adding an additional floor on a construction’s statics are available. Having a similar ability in software engineering requires software development processes and methods, in which the impact of design decisions on the resulting software system is predictable. While this is important for functional requirements such as developing a web shop, it is even more important for extra-functional requirements like the ability to serve 10.000 users simultaneously under acceptable response times. Among these extra-functional requirements, the Quality of Service (QoS) requirements of a system like performance, reliability, or availability are directly experienced by the end-user of a system explaining their importance.