Learning’s on Cloud Computing

Getting interested in Cloud Computing, I plan to do some some research over this weekend and I post my learning’s here. This article provides a list of cloud computing providers who are fore runners in this area today. Please feel free to correct if there is anything wrong in my understanding.

Cloud Computing is the use of IT resources assembled virtually, accessed over the Internet,  the usage is governed by the demand in real-time or near real-time on a pay-per-use or subscription basis and the workloads are shared among multiple customers and IT infrastructure is put in to maximum usage and business can focus on their prime goals rather than IT needs of business. A different definition states that cloud computing is  idea of abstracting computation (and storage) in a way that allows us to delegate away its management to a third party.Cloud Computing does not imply any particular system architecture and is neither a technology.

Instead of trying to define what cloud computing is and what it is not, I am going to look at three approaches in which companies are delivering cloud computing capabilities today. Infrastructure as a Service, Platform as a Service  and Software as a Service.

  • Software as a Service : This delivers a single application through the browser to thousands of customers. On the customer side, there would be no needed for upfront investment in servers or software licensing; On the provider side, there is just one app to maintain, and hence  costs are low  for upgrade and fix of issues, compared with conventional hosting. Web service providers offer APIs that enable developers to exploit functionality over the Internet, rather than delivering full-blown applications 
  • Infrastructure as a Service or Utility computing : delivery of computer infrastructure as a service. Enable IT to stitch together memory, I/O, storage, and computational capacity as a virtualized resource pool available over the network. The service is typically billed on a utility computing basis and amount of resources consumed (and therefore the cost) will typically reflect the level of activity.
  • Platform as a service : It  delivers software development environments as a service. You build your own applications that run on the provider’s infrastructure and are delivered to your users via the Internet.  These services are constrained by the vendor’s design and capabilities, restricting your freedom, but you do get predictability and pre-integration.

How does Cloud computing helps business? Availability of  highest quality service with reduction in cost. and migrate IT capital expenditure for customers to a revenue expenditure. Effectively Cloud computing allows companies to outsource their entire IT infrastructure and the associated security concerns for an Enterprise

Should our approach to designing software change to develop applications for cloud computing? Yes. Instead of following development approach of develop features, test developed features, deploy and release, we move to  development approach of develop features, test developed features, deploy and release Beta, develop features, test developed features, deploy and release Beta 2 and so on.