Monday, November 22, 2010

Own / Lease / Taxi … Zip Car


Defining the utility computing model and explaining various layers and types of clouds has been an industry staple for a while. Attempts to define the cloud have been many, and they have been memorialized in the NIST definition as reproduced below:

Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.

A conceptual model for the cloud layers is as follows:
The definitions and descriptions although accurate and complete fail to provide a sense of realism. I was recently asked to make the cloud "real" for a group of business leaders and chose the metaphor approach to explain the cloud. In doing so I ended up extending the metaphor and stumbling upon a concept that can potentially further drive cloud adoption. The metaphor I used was the classic car-based analogy.
  
We start with the traditional ownership model where you outright purchase a car. You own the vehicle, and can choose the color, the trim and the accessories. The car costs you the same whether you keep it in the garage or drive it 12 hours a day. You are also responsible for the maintenance and insurance for the vehicle.


This is the on-premise model for traditional software, where-in you own the software, can modify it as you please and are also responsible for the maintenance of the software.

A more recent model for software delivery has been the hosted model. This is similar to leasing a car. You own the vehicle, can accessorize it within limits, and can drive it when and where you please. The maintenance of the vehicle is not your responsibility. However you are limited to how much change you can make to the vehicle. For ex: You cannot change the color or add additional trim to the vehicle.


This model reduces the amount of ownership you have for the software, but it also lowers the maintenance overhead. As a business you start leveraging the software for the business function it offers without having to get overly involved in the maintenance of the application.

If the intent is simply to get from place A to place B and you do not care about what you drive and how the ride feels then using a taxi is an ideal solution. You use the taxi to get where you want. You pay for the time that you use the taxi, and have no ownership and no maintenance overhead. This is the cloud model for service delivery.


Granular pieces of functionality are leveraged on demand, and you pay for what you use. This is a highly efficient model for leveraging specific business functionality. There is no ownership and no maintenance overhead. Also you get what is delivered, and have no control over the structure of the services, and have to adapt your business processes to accommodate these services.

What if…. You liked the on-demand model of the cloud, the pay-as-you go convenience of the cloud, but still wanted the ability to customize your experience. Essentially you wanted a taxi, BUT wanted to choose the model of the taxi… AND you wanted to drive it. You wanted all of this for short periods of time and did not want to have any of the liabilities that come with ownership. This is possible, and in the "car" analogy is provided by the Zip car providers in major metro cities.


  This confluence of pay-as-you-go with the flexibility of limited ownership is provided by layering a SOA based approach in a cloud environment. This approach provides for a pre-built process on the cloud that can be further orchestrated to work with existing business processes.

No comments: