A Multi-model Optimization Framework for the Model Driven Design of Cloud Applications

The rise and adoption of the Cloud computing paradigm had a strong impact on the ICT world in the last few years; this technology has now reached maturity and Cloud providers offer a variety of solutions and services to their customers. However, beside the advantages, Cloud computing introduced new issues and challenges. In particular, the heterogeneity of the Cloud services offered and their relative pricing models makes the identification of a deployment solution that minimizes costs and guarantees QoS very complex. Performance assessment of Cloud based application needs for new models and tools to take into consideration the dynamism and multi-tenancy intrinsic of the Cloud environment. The aim of this work is to provide a novel mixed integer linear program (MILP) approach to find a minimum cost feasible cloud configuration for a given cloud based application. The feasibility of the solution is considered with respect to some non-functional requirements that are analyzed through multiple performance models with different levels of accuracy. The initial solution is further improved by a local search based procedure. The quality of the initial feasible solution is compared against first principle heuristics currently adopted by practitioners and Cloud providers.

[1]  Erwin A. de Kock,et al.  Exploring performance trade-offs of a JPEG decoder using the deepcompass framework , 2007, WOSP '07.

[2]  Xiaoyun Zhu,et al.  1000 islands: an integrated approach to resource management for virtualized data centers , 2009, Cluster Computing.

[3]  José Merseguer,et al.  Performance by unified model analysis (PUMA) , 2005, WOSP '05.

[4]  Lars Grunske,et al.  Architecture-Driven Reliability and Energy Optimization for Complex Embedded Systems , 2010, QoSA.

[5]  John Murphy,et al.  Detecting Performance Antipatterns in Component Based Enterprise Systems , 2008, J. Object Technol..

[6]  Sam Malek,et al.  A framework for utility-based service oriented design in SASSY , 2010, WOSP/SIPEW '10.

[7]  Stephen S. Lavenberg,et al.  Performance Modeling Tools , 1995, Performance evaluation (Print).

[8]  Danilo Ardagna,et al.  Adaptive Service Composition in Flexible Processes , 2007, IEEE Transactions on Software Engineering.

[9]  Aniruddha S. Gokhale,et al.  Applying Model Transformations to Optimizing Real-Time QoS Configurations in DRE Systems , 2009, QoSA.

[10]  Evgenia Smirni,et al.  Data Centers in the Cloud: A Large Scale Performance Study , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[11]  Jerome A. Rolia,et al.  A Toolset for Performance Engineering and Software Design of Client-Server Systems , 1995, Perform. Evaluation.

[12]  Steffen Becker,et al.  Automatically improve software architecture models for performance, reliability, and cost using evolutionary algorithms , 2010, WOSP/SIPEW '10.

[13]  Gabor Karsai,et al.  MDE-based approach for generalizing design space exploration , 2010, MODELS'10.

[14]  Barbara Panicucci,et al.  Multi-timescale Distributed Capacity Allocation and Load Redirect Algorithms for Cloud System , 2011 .

[15]  Raffaela Mirandola,et al.  Hybrid multi-attribute QoS optimization in component based software systems , 2013, J. Syst. Softw..

[16]  Jan Kofron,et al.  Research into Practice - Reality and Gaps, 6th International Conference on the Quality of Software Architectures, QoSA 2010, Prague, Czech Republic, June 23 - 25, 2010. Proceedings , 2010, QoSA.

[17]  Michel Gendreau,et al.  Tabu search for the redundancy allocation problem of homogenous series-parallel multi-state systems , 2008, Reliab. Eng. Syst. Saf..

[18]  Jing Xu,et al.  Rule-based automatic software performance diagnosis and improvement , 2008, WOSP '08.

[19]  Danilo Ardagna,et al.  SPACE4CLOUD: a tool for system performance and costevaluation of cloud systems , 2013, MultiCloud '13.

[20]  Heiko Koziolek,et al.  Performance evaluation of component-based software systems: A survey , 2010, Perform. Evaluation.

[21]  Raffaela Mirandola,et al.  Per-flow optimal service selection for Web services based processes , 2010, J. Syst. Softw..

[22]  Michael T. M. Emmerich,et al.  An evolutionary multiobjective optimization approach to component-based software architecture design , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[23]  Steffen Becker,et al.  The Palladio component model for model-driven performance prediction , 2009, J. Syst. Softw..

[24]  Nagarajan Kandasamy,et al.  Power and performance management of virtualized computing environments via lookahead control , 2008, 2008 International Conference on Autonomic Computing.

[25]  Paola Inverardi,et al.  Model-based performance prediction in software development: a survey , 2004, IEEE Transactions on Software Engineering.

[26]  Carlo Ghezzi,et al.  A quality driven extension to the QVT-relations transformation language , 2011, Computer Science - Research and Development.

[27]  Gerhard Meixner,et al.  TwoSpot: A Cloud Platform for Scaling Out Web Applications Dynamically , 2010, ServiceWave.

[28]  Ethan K. Jackson,et al.  Components, platforms and possibilities: towards generic automation for MDA , 2010, EMSOFT '10.

[29]  Raffaela Mirandola,et al.  A Hybrid Approach for Multi-attribute QoS Optimisation in Component Based Software Systems , 2010, QoSA.

[30]  Lars Grunske,et al.  ArcheOpterix: An extendable tool for architecture optimization of AADL models , 2009, 2009 ICSE Workshop on Model-Based Methodologies for Pervasive and Embedded Software.

[31]  Anne Koziolek,et al.  Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes , 2011 .

[32]  Barbara Panicucci,et al.  Energy-Aware Autonomic Resource Allocation in Multitier Virtualized Environments , 2012, IEEE Transactions on Services Computing.

[33]  Sandeep Neema,et al.  DesertFD: a finite-domain constraint based tool for design space exploration , 2010, Des. Autom. Embed. Syst..

[34]  Wilhelm Hasselbring,et al.  Search-based genetic optimization for deployment and reconfiguration of software in the cloud , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[35]  Lars Grunske,et al.  Software Architecture Optimization Methods: A Systematic Literature Review , 2013, IEEE Transactions on Software Engineering.

[36]  Ítalo S. Cunha,et al.  Joint admission control and resource allocation in virtualized servers , 2010, J. Parallel Distributed Comput..

[37]  Gabor Karsai,et al.  Constraint-Based Design-Space Exploration and Model Synthesis , 2003, EMSOFT.

[38]  Petter Svärd,et al.  Self-management Challenges for Multi-cloud Architectures (Invited Paper) , 2011 .