Is cloud computing same as putting things Online?
All those just boarding the cloud train, may have posed this question to themselves or to others who may have a know-how on cloud. Being a Cloud SME myself, I have faced this question several times. This post is an attempt to clear some of the confusion that exists around this specific topic.
To answer this question: There is lot more to the cloud than just on-demand processing power and the pay-per-use model. The IaaS-PaaS-SaaS cloud pyramid seems to be one of the better and widely used models to explain cloud and bring about correlation between the several entities in the cloud eco-system.
From a cloud application perspective the key here would be distinction between the consumer of an app (End consumer view) and the technology on which an app (Developer view) is built on.
For an end consumer, experiencing cloud could be like using any other web app; perceived to be reliable and always available. An application which can be used cheap or even free (this could be optional, would depend on the value of the services being offered and the perceived brand value of the provider).
From a SaaS providers perspective, perceiving cloud is about offering an application that meets with the expected levels of SLA's( reliability, availability etc..) of the consumer under any operating conditions without any additional capital investments from the SaaS providers end.
For classifying cloud apps, taking the SaaS providers view would be more apt rather than the end consumer and some definitions of with that perspective out there..
NIST states, "The capability provided to the consumer is to use the provider's applications running on a cloud infrastructure. The applications are accessible from various client devices through a thin client interface such as a web browser (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings."
Wiki states, "A cloud application leverages cloud computing in software architecture, often eliminating the need to install and run the application on the customer's own computer, thus alleviating the burden of software maintenance, ongoing operation, and support."
Summarizing, a cloud app is an application which consumes, is governed and managed by the services or infrastructure provided by a cloud platform. The cloud platform are the likes of Azure, EC2, AppEngine, SalesForce's PAAS offering etc. Apps that are build on these platforms are by all means a cloud app each dependent on the services provided by the underlying platforms..