This is a guide for the non-developer or non-operations guy.
The goal of this post is to lay the ground work for a further discussion: of cloud vs. on-premise, and the pros and cons of going with a cloud solution.
Ideally, a business leader can use this information to stay informed and discuss cloud infrastructures with the technical group.
Likewise, the technical group can use this primer as a discussion point when justifying a cloud application to their business leaders.
In our estimation, there are 7 key components of what makes a service cloud based. I can’t take all the credit for these – they were shared with me via classes and knowledge sharing while I was studying at Babson and working with one of the professors there, Bala Iyer. Without further ado here are the seven key components of any Cloud based service.
1. Maintain a Controlled Interface
This attribute leads to not only usability and customer success with the platform but also integration points, access, and user community. The benefit of maintaining a controlled interface is that all users of the cloud platform experience the same thing. This tenet proclaims that, all things being equal across platforms and services, it’s easier to supply a true cloud based system if you can control all interface and interaction with the platform.
This includes creating an open and well documented API, maintaining strict control of the UI and functionality within, defining and controlling access mechanisms, and fully documenting all aspects of the platform. Although many customers and community members can and will write integration points into the platform – the access to send and receive data within the platform is controlled.
2. Location Independence
This attribute asks the question: Can I access the data that resides in the platform anywhere? Do I have to be in the application to have access to my data? If access to data is completely location independent it is not necessary to live in the application to use and manipulate customer data.
A high level of location independence lends to a more robust cloud platform. For example, imagine if dropbox required customers to login to their website to access their data. Do you believe that they would have been as successful with that approach instead of allowing users access to their data from every application, every device, and every operating system (mobile and desktop) available?
A word of caution here. Compliance and regulatory issues surrounding data storage can affect location independence. For example, Safe Harbor can be utilized by specific US entities when dealing with privacy laws in the EU.
3. Sourcing Independence
This tenet speaks to the stickiness of the platform – or the ability to easily move from one platform to another. One of the foundations that the cloud was formed on was ease of use and the ability to use whichever application a customer preferred to get the job done.
At the end of the day any cloud vendor’s most important asset is it’s customers. Giving customers access to their data seems like a no-brainer. However a lot of cloud vendors try to lock their customers into their environment by storing data in a proprietary format, making it difficult or impossible to export data, and even going so far as to charge customers for their data back. The cloud should be about choice! Customers should stick with a cloud vendor because of the business value they derive from the platform – not because they’re forced to.
4. Ubiquitous Access
This is different than attribute number 2, location independence. Ubiquitous access simply means that a customer should be able to access the platform or service from any type of device or operating system. Platforms that only work on Windows or require a PC to access them limit the usability of the platform and decrease cloud capabilities.
A simple example of this type of access is Google Calendar. Whether you’re on your machine, iPhone or Android, or just a web browser – your calendar is accessible and available no matter what.
5. Virtual Business Environments
A Virtual Business Environment is a group of tools, applications, or processes that support business needs. Being able to maintain all tools specific to one business need is analogous to the old back office ways of maintaining one server for email, one server for finance, etc. VBEs ultimately need to be tailored to the customer needs – and provide multiple options to fit every business need.
6. Addressability and Traceability
This capability allows for not only logging and monitoring built into a platform but also tracking and compliance & audit functions. Presenting information to users of your platform as to why they’re being charged a specific amount or how their data has been processed through the system is tantamount to cloud platforms. Being able to track the entire history of an item or piece of data across a platform is equally important.
Often times for compliance or regulatory needs this audit and history trail must exist.
7. Rapid Elasticity
Rapid Elasticity is the ability of an application, platform, or service to scale to meet demand. Auto-scaling an environment should be easy and more importantly invisible to the end user. The benefit of a truly elastic environment is that you really only use what is required. In the old days you had to plan for peak performance. This meant that often times resources would be underutilized and companies were overpaying for resources just to cover peak time. With a cloud based infrastructure, resources can be spun up at will to cover peak times – and easily destroyed or turned off during low usage times.
Now that you’re armed with the knowledge of what characteristics exist in a cloud based solution – do you think there should be other capabilities added? Do you feel capable of discussing your cloud decisions with someone non-technical?