Developing migratable multicloud applications based on MDE and adaptation techniques

Developing software for the cloud usually implies using the tools and libraries supplied by cloud vendors for each of their platforms. This strongly couples the software to specific platforms and penalizes its migration or interoperability with external cloud services, in what is known as vendor lock-in. Under these circumstances multicloud applications become difficult to build and maintain since they require multidisciplinary teams with expertise on multiple platforms, and the redevelopment of some components if the cloud deployment scenario is altered. The MULTICLAPP framework described in this paper tackles these issues by presenting a three-stage development process that allows multicloud applications to be developed without being coupled to any concrete vendor. MDE and adaptation techniques are used throughout the software development stages in order to abstract the software from each vendor's service specifications. As a result of this, multicloud applications or their subcomponents can be reassigned to different cloud platforms without having to undergo a partial or complete redevelopment process.

[1]  Ladan Tahvildari,et al.  A Reference Model for Developing Cloud Applications , 2011, CLOSER.

[2]  Wei-Tek Tsai,et al.  Service-Oriented Cloud Computing Architecture , 2010, 2010 Seventh International Conference on Information Technology: New Generations.

[3]  Carlos Canal,et al.  Identifying adaptation needs to avoid the vendor lock-in effect in the deployment of cloud SBAs , 2012, WAS4FI-Mashups '12.

[4]  Dana Petcu,et al.  Portable Cloud applications - From theory to practice , 2013, Future Gener. Comput. Syst..

[5]  Ricardo Seguel,et al.  Generating Minimal Protocol Adaptors for Loosely Coupled Services , 2010, 2010 IEEE International Conference on Web Services.

[6]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[7]  E. Michael Maximilien,et al.  Toward cloud-agnostic middlewares , 2009, OOPSLA Companion.

[8]  Paola Inverardi,et al.  SYNTHESIS: A Tool for Automatically Assembling Correct and Distributed Component-Based Systems , 2007, 29th International Conference on Software Engineering (ICSE'07).

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

[10]  Carlos Canal,et al.  A service-oriented framework for developing cross cloud migratable software , 2013, J. Syst. Softw..

[11]  Alexander Papaspyrou,et al.  Toward an Open Cloud Standard , 2012, IEEE Internet Computing.

[12]  Neal Leavitt,et al.  Is Cloud Computing Really Ready for Prime Time? , 2009, Computer.

[13]  Carlos Canal,et al.  Model-Based Adaptation of Behavioral Mismatching Components , 2008, IEEE Transactions on Software Engineering.

[14]  Carlos Canal,et al.  Development of Adaptive Multi-cloud Applications - A Model-Driven Approach , 2016, MODELSWARD.

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

[16]  Eliza Varney Distributed Management Task Force, Inc , 2010 .

[17]  Parastoo Mohagheghi,et al.  Towards CloudML, a Model-based Approach to Provision Resources in the Clouds , 2012 .

[18]  Carlos Canal,et al.  Enough about standardization, let's build cloud applications , 2012, WICSA/ECSA Companion Volume.