Cloud Modeling Languages by Example

Recently, several proposals towards a cloud modeling language have emerged. As they address the diversity of cloud environments, it is not surprising that these modeling languages support different scenarios. Using a by-example approach based on the scenario of software migration, we demonstrate their representational capabilities and review them according to characteristics common to all modeling languages as well as specific to the cloud computing domain. We report on our findings and present research guidelines for future efforts towards a better alignment of the different cloud modeling languages.

[1]  Dines Bjørner Software Engineering 1 - Abstraction and Modelling , 2006, Texts in Theoretical Computer Science. An EATCS Series.

[2]  Mark Rouncefield,et al.  Model-driven engineering practices in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[3]  Claus Pahl,et al.  Cloud Migration Research: A Systematic Review , 2013, IEEE Transactions on Cloud Computing.

[4]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[5]  Wilhelm Hasselbring,et al.  Automatic conformance checking for migrating software systems to cloud infrastructures and platforms , 2013, J. Softw. Evol. Process..

[6]  Will Venters,et al.  A critical review of cloud computing: researching desires and realities , 2012, J. Inf. Technol..

[7]  Fermín Galán Márquez,et al.  Software architecture definition for on-demand cloud provisioning , 2010, HPDC '10.

[8]  Antonio Brogi,et al.  SeaClouds: a European project on seamless management of multi-cloud applications , 2014, SOEN.

[9]  Bernhard Rumpe,et al.  The evolution of modeling research challenges , 2013, Software & Systems Modeling.

[10]  Bernhard Rumpe,et al.  Meaningful modeling: what's the semantics of "semantics"? , 2004, Computer.

[11]  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).

[12]  Brice Morin,et al.  Towards Model-Driven Provisioning, Deployment, Monitoring, and Adaptation of Multi-cloud Systems , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[13]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[14]  Brice Morin,et al.  REMICS- REuse and Migration of Legacy Applications to Interoperable Cloud Services , 2011, ServiceWave.

[15]  Mike P. Papazoglou,et al.  Knowledge-intensive cloud services: Transforming the cloud delivery stack , 2016 .

[16]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[17]  Frank Leymann,et al.  Moving Applications to the Cloud: an Approach Based on Application Model Enrichment , 2011, Int. J. Cooperative Inf. Syst..

[18]  Bernhard Rumpe,et al.  Modeling for the cloud , 2010, Software & Systems Modeling.

[19]  Geir Horn,et al.  A vision for better cloud applications , 2013, MultiCloud '13.

[20]  Dimosthenis Kyriazis,et al.  Migrating Legacy Software to the Cloud with ARTIST , 2013, 2013 17th European Conference on Software Maintenance and Reengineering.

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

[22]  Philip A. Bernstein,et al.  ModelGen: model independent schema translation , 2005, 21st International Conference on Data Engineering (ICDE'05).

[23]  Jean Bézivin,et al.  On the unification power of models , 2005, Software & Systems Modeling.

[24]  Mike P. Papazoglou,et al.  Blueprinting Approach in Support of Cloud Computing , 2012, Future Internet.

[25]  Gerti Kappel,et al.  Lifting metamodels to ontologies: a step to the semantic integration of modeling languages , 2006, MoDELS'06.

[26]  Gabor Karsai,et al.  Design Guidelines for Domain Specific Languages , 2014, ArXiv.

[27]  Norman May,et al.  Towards a Unified Service Description Language for the Internet of Services: Requirements and First Developments , 2010, 2010 IEEE International Conference on Services Computing.

[28]  Oliver Kopp,et al.  TOSCA: Portable Automated Deployment and Management of Cloud Applications , 2014, Advanced Web Services.

[29]  Jordi Cabot,et al.  MoDisco: a generic and extensible framework for model driven reverse engineering , 2010, ASE.

[30]  Dana Petcu,et al.  MODAClouds: A model-driven approach for the design and execution of applications on multiple Clouds , 2012, 2012 4th International Workshop on Modeling in Software Engineering (MISE).

[31]  Gerti Kappel,et al.  UML-based Cloud Application Modeling with Libraries, Profiles, and Templates , 2014, CloudMDE@MoDELS.

[32]  Mark Rouncefield,et al.  Empirical assessment of MDE in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[33]  Hai Dong,et al.  Survey of Service Description Languages and Their Issues in Cloud Computing , 2012, 2012 Eighth International Conference on Semantics, Knowledge and Grids.

[34]  Oliver Kopp,et al.  Vino4TOSCA: A Visual Notation for Application Topologies Based on TOSCA , 2012, OTM Conferences.

[35]  Frank Leymann,et al.  How to adapt applications for the Cloud environment , 2012, Computing.

[36]  Wilhelm Hasselbring,et al.  Kieker: a framework for application performance monitoring and dynamic software analysis , 2012, ICPE '12.

[37]  Daniel L. Moody,et al.  The “Physics” of Notations: Toward a Scientific Basis for Constructing Visual Notations in Software Engineering , 2009, IEEE Transactions on Software Engineering.

[38]  Yehia Taher,et al.  Blueprint Template Support for Engineering Cloud-Based Services , 2011, ServiceWave.

[39]  Martin Glinz,et al.  On Non-Functional Requirements , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[40]  Judith Kelner,et al.  CloudML: An Integrated Language for Resource, Service and Request Description for D-Clouds , 2011, 2011 IEEE Third International Conference on Cloud Computing Technology and Science.

[41]  Timothy Grance,et al.  Cloud Computing Synopsis and Recommendations , 2012 .

[42]  Rajkumar Buyya,et al.  Dynamically scaling applications in the cloud , 2011, CCRV.

[43]  Gerardo Canfora,et al.  Achievements and challenges in software reverse engineering , 2011, Commun. ACM.

[44]  Edward Walker,et al.  The Real Cost of a CPU Hour , 2009, Computer.

[45]  Stéphane Ducasse,et al.  Software Architecture Reconstruction: A Process-Oriented Taxonomy , 2009, IEEE Transactions on Software Engineering.

[46]  Wilhelm Hasselbring,et al.  The CloudMIG Approach: Model-Based Migration of Software Systems to Cloud-Optimized Applications , 2012 .

[47]  Gabor Karsai,et al.  Challenges and directions in formalizing the semantics of modeling languages , 2011, Comput. Sci. Inf. Syst..

[48]  Diomidis Spinellis,et al.  Notable design patterns for domain-specific languages , 2001, J. Syst. Softw..

[49]  Parastoo Mohagheghi,et al.  Towards a Domain-Specific Language to Deploy Applications in the Clouds , 2012, CLOUD 2012.

[50]  Carlos Canal,et al.  A UML Profile for Modeling Multicloud Applications , 2013, ESOCC.

[51]  Bran Selic The Less Well Known UML - A Short User Guide , 2012, SFM.