CloudScale - Scalability Management for Cloud Computing
Cloud computing offers companies a promising approach for saving costs when running their software: they only have to pay the amount of hardware that is required for operation. However, software needs to be optimized for running in the cloud such that a minimum of hardware is needed. The EU FP7 STREP project CloudScale has, therefore, the goal of aiding software developers in engineering software that performs well in the cloud.
Designing for Scalability
The key to success of the project is a mature scalability management, i.e., improving the degree to which the software takes advantage of the possibilities offered by the cloud. On the one hand, these possibilities are related to the amount and speed of available hardware (CPUs, hard disks, network, etc.) the cloud assigns to the software. On the other hand, scalability is influenced by the structure of the software itself, i.e., its control and data flow. Not considering the structure's effects can either lead to low performance (under-provisioning, resulting in high response times or low throughput) or high costs (over-provisioning, caused by low utilization of hardware). CloudScale aims at providing an engineering approach for building cloud software that considers these factors and runs efficiently within the cloud. This objective involves three main aspects covered by CloudScale: (1) scalable cloud software by design so that it can exploit the possibilities of the cloud during the whole software life-cycle, (2) analysis of the scalability of software components and their composition, and (3) industrial relevance and uptake of the CloudScale results so that scalability issues become less of a problem for cloud software.
Planned Results and their Value Chain
CloudScale will enable the modeling of design alternatives and the analysis of their effect on scalability and cost. Best practices for scalability further guide the design process. Moreover, CloudScale will provide tools and methods that detect scalability problems by analyzing the software. Based on the detected problems, CloudScale will offer guidance on the resolution of the bad practice. These results offer benefits to different types of people, organizations, and roles. End users profit from an improved scalability of their cloud-based software even during peak loads. For developers, an improved scalability management becomes a selling point. In particular, developers will be able to understand and predict the scalability of their software. Software providers are given the means to make timely decisions about purchase or deployment of new hardware in order to prevent scalability problems before they show up.
Organization of the CloudScale Project
CloudScale is an EU FP7 STREP project with a total cost of 4.7 million euros. It is running since October 2012 and will end in September 2015. Within the project, the s-lab at the University of Paderborn as well as the Software Engineering research group around Jun.-Prof. Steffen Becker at the Heinz-Nixdorf-Institute cooperate with their project partners SINTEF (Norway), SAP (Germany), Ericsson Nikola Tesla (Croatia), and XLAB (Slovenia). The s-lab and the research group focus on theoretical concepts, methods, and languages in engineering cloud software while their project partners contribute industry relevant case studies and suitable development tools as well as manage the project as a whole.