Exploring Cloud Computing (part 3) – creating a Cloud “decision framework”
In my last blog, I talked about creating a “decision framework” to help organization move towards Cloud adoption. However, I had little idea of what it may take to create a “decision framework” until attended this Gartner webinar by Drue Reeves, Distinguished Gartner Analyst. This webinar, titled “A methodology for determining which application can go on the Cloud”, taught me something that I believe can also be used an inputs for developing “Cloud Strategy”. I would like to share with you the notes I took from this webinar.
Step 1: Risk Assessment
When you put the application in the Cloud, you need to understand that you are losing control over it to some extent, especially when you are putting your application in the public Cloud.
With IaaS you have much more control and with SaaS you have some control.
Think of what is your risk tolerance for the application if you lose some transactions/data, or you lose service connection. Will that cause any loss of life, or loss of your brand or productivity?
Are you risking customer privacy? Are you staying complaint? If you think that you can’t tolerate your Cloud application going down for few minutes or your risk tolerance for the Cloud application is extremely low then stop here!
Step 2: Risk Mitigation
Once you have evaluated your risks and risk tolerance and decided to move forward, you need to think how you can mitigate these risks. You may mitigate some of the risks by :
– making sure the Cloud service is in compliance to security requirements
– by adopting a hybrid Cloud approach where you can run your application on the public Cloud but store your data and access control inside your own company network. This way even if you lose access to the Cloud, your data stays secure.
– having an insurance that will pay you in case you loss of control and resulting financial loss to your business.
Step 3: Select Cloud Layer
Once you understand the risks and have a plan for risk mitigation, next step is to select Cloud layer: “IaaS, PaaS or SaaS. You should involve application owner in this process.
You should ask them if they want to manage the application at the user level or at the storage level,
Do they want to just replace the application or want to re-factor the application?
If application owners want to manage applications at the storage level, then you will select IaaS layer.
If the application owners say that they are not looking to manage the application at storage level, don’t want to deal with backups, don’t want to build extensions or refractor the application then you know that they are just looking for the replacing the application with a SaaS application.
However, if the requirement is to re-factor the application and run it using Hybrid model then the right option is to go with PaaS.
Step 4: Technical Assessment
Next, you need to perform technical and cost assessment of the Cloud layer that you are thinking of using. For example, if you are going for IaaS, you need to find out what kind of computing resources (CPUs, memory) and storage are required by the application. If you are going for SaaS, you need to find out how many users will be using the application, what functionality business owners plan to use and what data will flow in or out of the application. Based on your technical assessment, you need to come up with a total cost.
Step 5: Cloud Application Design
Once you have selected your Cloud layer, you need to decide what design changes are required to make it usable for the business.
If you are going for IaaS or PaaS, you may want to:
– design it for resiliency
– add services for backup and snapshot
– add additional servers for load balancing
If you decide to use SaaS:
– You need to customize the user interface to make it usable for the business.
– You may add a mobility layer so that application can be used frommobile devices.
Whatever service you select, you want to add it to a check list of things to monitor.
You want to monitor your Cloud application and services to make sure it is keeping up with the growth.
Step 6: Cloud Bill Estimation and Governance
You can’t deploy to the Cloud without knowing how much it would cost. You don’t want to find out later that your Cloud requirement has grown and your IT budget is blown out.
You should also want to ask your business how the application will grow over time, so that you can estimate the cost for adding resources and features to the application in the Cloud.
For example, how many users you will need to added with time, how many instances you may have to add to keep up the optimum performance. You need to have a governance process in place to make sure you have only the required number of active accounts in the Cloud and you are not over-consuming.
Note: Once you have reached this point, you have everything you need to make go/no-go call for moving to Cloud.
Step 7: Flow of approval
Once you have decided to go ahead with Cloud deployment, you need to get buy in from all key players: application owners and their business unit leaders. On the strength of this process, you can show that due diligence is done, and you can get approval based on that.
Step 8: Cloud Supply Chain
Now you have the approval to migrate app to the Cloud. You must have process defined for opening and shutting down could account. Migration strategy: you have to order the app, you have to think hybrid when putting application the public Cloud but may want keep access control inside your network. Storage migration strategy: if you decide to keep data in house, you may need fast connection between Cloud and on-premise systems.
Step 9: Manage and evaluate
Information you have gathered from previous steps need to be used to manage expectations.
You need to monitor and control your Cloud application to make sure it meets the expectations that has been set with the business owners.