Abstract
1. Cloud computing has attracted attention as an important platform for software deployment, with perceived benefits such as elasticity to fluctuating load, and reduced operational costs compared to running in enterprise data centers. While some software is written from scratch specially for the cloud, many organizations also wish to migrate existing applications to a cloud platform. Such a migration exercise to a cloud platform is not easy: some changes need to be made to deal with differences in software environment, such as programming model and data storage APIs, as well as varying performance qualities. We report here on experiences in doing a number of sample migrations. We propose a taxonomy of the migration tasks involved, and we show the breakdown of costs among categories of task, for a case-study which migrated a .NET n-tier application to run on Windows Azure. We also indicate important factors that impact on the cost of various migration tasks. This work contributes towards our future direction of building a framework for cost-benefit tradeoff analysis that would apply to migrating applications to cloud platforms, and could help decision-makers evaluate proposals for using cloud computing. Cloud computing has recently been the focus of much excitement in the IT community, seen by some as the next platform shift, with impact on enterprise computing that could compare to the change from main-frames to minicomputers, or from desktop PCs to networked systems. Major vendors are taking on cloud computing as a crucial strategy, governments are discussing national agendas for the coming shift, and start-ups are growing to fill niches [11]. One of the attractions for an organization using cloud resources, rather than those in an enterprise-scale data center, is that it can enjoy cost saving through larger economies of scale, since the costs of hardware, power, buildings and administrative support are typically about 5 times lower for internet-scale systems than for enterprise-scale ones. Even more significant to a rapidly-growing business is the elasticity of costs; instead of up-front purchase of an overprovisioned system, one can pay a cloud provider ong