Capacity management is a core activity when designing and operating distributed software systems. Particularly, enterprise application systems are exposed to highly varying workloads. Employing static capacity management, this leads to unnecessarily high total cost of ownership due to poor resource usage efficiency. This thesis introduces a model-driven online capacity management approach for distributed component-based software systems, called SLAstic. The core contributions of this approach are a) modeling languages to capture relevant architectural information about a controlled software system, b) an architecture-based online capacity management framework based on the common MAPE-K control loop architecture, c) model-driven techniques supporting the automation of the approach, d) architectural runtime reconfiguration operations for controlling a system’s capacity, as well as e) an integration of the Palladio Component Model. A qualitative and quantitative evaluation of the approach is performed by case studies, lab experiments, and simulation.
Capacity management is a core activity when designing and operating distributed software systems. Particularly, enterprise application systems are exposed to highly varying workloads. Employing static capacity management, this leads to unnecessarily high total cost of ownership due to poor resource usage efficiency. This thesis introduces a model-driven online capacity management approach for distributed component-based software systems, called SLAstic. The core contributions of this approach are a) modeling languages to capture relevant architectural information about a controlled software system, b) an architecture-based online capacity management framework based on the common MAPE-K control loop architecture, c) model-driven techniques supporting the automation of the approach, d) architectural runtime reconfiguration operations for controlling a system’s capacity, as well as e) an integration of the Palladio Component Model. A qualitative and quantitative evaluation of the approach is performed by case studies, lab experiments, and simulation.