Cloud computing is being introduced in the last years as a major paradigm shift of the way software is delivered to its end-users. Cloud computing started off with the concept of Software-as-a-Service, in which companies like salesforce.com offered business application services ‘in the cloud’, relieving their customers from the burden of installing and maintaining hardware and software systems. Cloud computing has evolved in the last years to incorporate other models, like Infrastructure-as-a-Service, in which virtual machines can be created, configured and managed by end-users but run effectively in the cloud, and Platform-as-a-Service, in which developers design, implement and deploy their applications in the cloud environment of a cloud provider. Examples of these models are Amazon EC2 and GoogleApps, respectively.
Model-driven development aims at separating the platform-independent design of a software application from its implementation in a certain implementation platform. Cloud computing is being seen as one important development for deployment platforms of software applications. In this project the students will investigate the role cloud computing can play in the scope of model-driven development. The students will study the different forms and implementations of could computing, and devise transformations from platform-independent models to these different platforms. A simple example application should be built using one or more cloud computing environment, such as Google Apps or Amazon EC2.
- Literature study on cloud computing, model-driven engineering and their related technologies.
- Selection of cloud environment and application for the example application.
- Development of an example application using models, metamodels and transformations.
- Evaluation of the development process and the resulting application.
- David Hilley. Cloud Computing: A Taxonomy of Platform and Infrastructure-level Offerings. College of Computing. Georgia Institute of Technology. April 2009
- Michael Armbrust et al. Above the Clouds: A Berkeley View of Cloud Computing. UC Berkeley Reliable Adaptive Distributed Systems Laboratory. February 10, 2009
- Douglas C. Schmidt. Guest Editor's Introduction: Model-Driven Engineering. Computer, vol. 39, no. 2, pp. 25-31, Feb. 2006
Luís Ferreira Pires