We've looked at clouds from both sides now
Abstract
Cloud Computing is a versatile technology that can support a broad-spectrum of applications. The low cost of cloud computing and its dynamic scaling renders it an innovation driver for small companies, particularly in the developing world. Cloud deployed enterprise resource planning (ERP), supply chain management applications (SCM), customer relationship management (CRM) applications, medical applications and mobile applications have potential to reach millions of users. Cloud deployed applications that employ mobile devices as end-points are particularly exciting due to the high penetration of mobile devices in countries like China, South Africa and India. With the opportunities in cloud computing being greater than at any other time in history, we had to pause and reflect on our own experiences with cloud computing - both as producers and consumers of that technology. Our interests and attitudes toward cloud technology differ considerably for each side of the cloud-computing topic. As producers of cloud-like infrastructure, much of our interest was on the technology itself. We experimented with algorithms for managing remote program invocation, fault tolerance, dynamic load balancing, proactive resource management and meaningful distributed application monitoring. As consumers of cloud computing however, our focus switched from interesting technology to usability, simplicity, reliability and guaranteed rock solid data stability. With an eye to the many cloud articles in the recent news, we have to ask, is cloud computing ready for prime time? After reviewing stories about current cloud deployments, we conclude that cloud computing is not yet ready for general use; many significant cloud service failures have been reported and several important issues remain unaddressed. Furthermore, besides the failures and gaps in the current cloud offerings, there is an inherent flaw in the model itself. Today, the cloud represents an opportunity for a client to outsource hardware/software function or program computing cycles. The missing piece is responsibility outsourcing - today something found only in IT Outsourcing contracts. This missing piece represents an essential component of a cloud offering. Without it, cloud consumers are left without any real reassurances that their data is safe from failures, catastrophe or court ordered search and seizure. in this paper, we explore the different viewpoints of cloud computing. Leveraging our experiences on both sides of clouds, we examine clouds from a technology aspect, a service aspect and a responsibility aspect. We highlight some of the opportunities in cloud computing, underlining the importance of clouds and showing why that technology must succeed. Finally, we propose some usability changes for cloud computing that we feel are needed to make clouds ready for prime time. © 2011 IEEE.