Ok. I said I was going to post my thoughts on the Cloud Computing definition this week, and here it is Thursday already, and I haven’t done a thing! In the interests of full disclosure, these days I am spending as much of my time finding revenue-generating work as I can – the economic times seems to have hit me where it counts! That said, here’s some initial thoughts on the topic of what cloud computing is or is not.
The NIST definition has been around for a while now (not that long, but ages in Internet time). This definition is the basis for the ongoing standards work in the ISO (ISO JTC1/SC38/WG3 to be exact). It’s also used in a wide variety of other consortia and standards organizations….to the point where most people seem to take for granted that it is authoritative.
There have been observers, however, that would say this definition was really designed for the US government and does not satisfy everyone’s views or needs (especially vendor marketing people!).
Let’s look at the definition piece by piece. First of all, I don’t believe anything is adequately defined by stating a few characteristics or implementation patterns. There has to be more to it than that! The main part of the definition says:
- Cloud computing is a model – Cloud Computing is now being used for far more than a model, although models are clearly part of it. I believe “cloud computing” now refers to anything from an architecture down to products and specific solutions. It is really a “pattern” for IT using a certain style of provisioning and operation.
- for enabling ubiquitous, convenient, on-demand network access – This really could be re-stated as Internet access since it can be argues there are no other ubiquitous network access methods. The Internet is certainly convenient and widely available. Network access isn’t always truly on-demand (although free Wi-Fi probably qualifies) since we usually pay for Internet access on a monthly and/or flat fee basis.
- to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) – Possibly this is the true heart of the definition for cloud computing. It states that cloud computing is: shared, configurable, resources.
- that can be rapidly provisioned and released with minimal management effort or service provider interaction – Cloud computing management supports: rapid start-up and tear-down, minimal explicit management effort, and self-service operation.
We will consider the rest of the description (five essential characteristics, three service models, and four deployment models) in subsequent posts.
Based on this definition, Cloud Computing should legitimately include the following well-known applications……even if they are not using IaaS-conforming hosting services:
- Facebook/LinkedIN: certainly conveniently accessible everywhere (with 100M users it has to be), its on-demand (and free), it’s configurable (e.g., security settings, blocking), it’s a shared application, and it provides services.
- Gmail/hotmail: widely accessible, easy to access, configurable, provide distinct services
- Google/Bing: same as above
It can probably also be argued that any consumer application (such as a Facebook game) fits into the definition of cloud computing, while many hosted corporate applications that are access controlled would not.
What do you think? Is Cloud Computing a new generation of IT or is it really just a name for “public access computing”?