Clouduitability: Suitability assessment of applications in cloud

I might have just introduced yet another term related to cloud computing – clouduitability. Clouduitability is derived from “Cloud Suitability”. I will be using this term throughout this post to denote the suitability of an application or IT workload to run in a cloud environment. It also indicates the compatibility of an application with most cloud environments provided open standards and industry best practices are inherent. Cloud suitability assessment is and should be an important consideration before starting a cloud journey.

When the business and IT take their shared responsibility for cloud strategy and governance, it is important to consider which applications are really suitable for cloud computing and can generate business values. A common question often asked by many is “which applications are suitable for cloud and which are not?” There might not be any productivity and efficiency gain, and increment in business values if applications are moved to cloud bypassing this initial exercise of suitability assessment.

Reports from analysts, predictions and market analysis show that cloud adoption rate is increasing radically.  Study shows that a significant percentage of organizations are already piloting or have adopted or substantially implemented cloud based solutions. Others are looking into making a start to embrace cloud computing. In this blog, I will endeavor to provide different “clouduitability” scenarios in favor of cloud or against the cloud. As usual I will provide references to other published literatures.

Some applications are born on the cloud and others are relocated to it. Ric Telford has provided a very good insight on applications categories that can live in cloud in his blog “Relocated or born there?”  It is interesting to see that a new species of applications and IT workloads is born to leverage the inherent properties (elasticity, scalability and others) of cloud computing and APIs offered by cloud.

On the other hand we have also seen the trends of relocating enterprise applications to cloud environment by redesigning or rewriting existing applications. International Data Corporation (IDC), in its top 10 prediction for 2012, states that more than 80 percent of new applications developed in 2012 will be deployed and distributed through cloud. The cloud model will dominate over the traditional model for enterprise application distribution and deployment.  In this year, migration of legacy applications to cloud will also accelerate. About 2.5 percent of packaged applications will be migrated onto public cloud which is four times more than the result of 2011.

Now I will delve into the main topic. In the next few paragraphs with reference to my book chapter entitled “Cloud Computing Terms, Definitions, and Taxonomy”, I will try to explain which applications are a good fit for cloud (clouduitable) and which are not. I will also indicate when I have taken examples from other literatures.

Applications suitable for cloud

  1. Cloud is the right choice for application development and testing. With zero capital cost and low operation cost, cloud can help organizations of any size and type with faster prototyping, development and deployment. Once the product life cycle is complete, organizations can relinquish the cloud infrastructure.
  2. We are seeing an explosion of social media and applications for collaborations. These applications are the right candidate for cloud computing.
  3. Disaster Recovery as a Service has been gaining traction among organizations. IT professionals are now considering backing up their data in secured cloud environments.
  4. Desktop cloud and productivity applications like calendars, word processors, blogging tools, e-learning, mobile applications and others are better off with the cloud.
  5. Mobile applications can utilize cloud environments. Cloud computing can do the heavy lifting in the backend and mobile devices can leverage the elasticity and scalability attributes of cloud.
  6. Interaction-intensive Web 2.0 applications, mash-ups and data-intensive applications like analytics, data mining and business intelligence are very clouduitable. Many organizations have already moved CRM, ERP, HR, management tools and business analytics onto cloud and getting good return on investment.
  7. Websites for conferences or events (like Australian Open tennis, father’s day), promotional and seasonal (websites operational during holiday) websites and also websites that are only operational during a particular time of the day are perfect examples of applications that may run on the cloud. You might be interested to look at IBM Australia Open case study and see IBM has provided a simplified but dynamic IT infrastructure by means of cloud and reduced the cost per visit to australianopen.com by 35 percent. For 50 weeks of the year, Tennis Australia experiences little traffic and demand for data. But during the two weeks of the Australian Open, it needs to provide a scalable IT infrastructure to cope with the huge surge in traffic and data. This definitely justifies the need for cloud computing.
  8. Batch applications are clouduitable – suitable for cloud. To make the process faster, even more instances of virtual images can be provisions to perform tasks in parallel. Only cloud can offer this capability of rapid provisioning of IT infrastructure.
  9. Multimedia applications are finding a home in cloud environment. You can find how cloud can address multimedia and service heterogeneity, QoS heterogeneity, device heterogeneity, responsiveness and user experience and others in my blog “Hey, Cloud! So you think you can manage and deliver multimedia content?”
  10. Sometimes organizations experience a drastic change in their IT environments. Merger and acquisition can be one such scenario. During this IT transition public cloud will be very beneficial. When the change subsides, the amalgamated company can decide on a new IT strategy. (Source: Identifying applications for public and private clouds) 

Applications not suitable for cloud computing

  1. Cloud is not suitable when there is a concern around privacy and sensitive information. In these cases, cloud should not be used in IT infrastructure without legal advice.
  2. Although cloud acts like a central monolithic IT powerhouse, servers and storage may be dispersed all around the world. When there is a geopolitical concern, data sovereignty and compliance issue, cloud should not be used. For example, most of the governments will not allow a cloud provider to host citizens’ sensitive health information in a data center outside the country’s boundary.
  3. Some applications are tightly bound to a particular type of hardware, chips or drivers. These applications rely on low level specific hardware resources. This category will not work in cloud computing infrastructure.
  4. Large enterprise relational database management systems (RDBMS) are not yet ready for cloud environment. There are several factors. Performance is one of them. Loading the database into cloud can be costly and also cause harmonization problem. Latency may impact Quality of Service (QoS). (Source: Identifying applications for public and private clouds)
  5. If a company needs detailed control of cloud infrastructure for its application, a public cloud will not be suitable. Private cloud is the right choice.
  6. Some applications might have been designed without proper consideration of compatibility. Compatibility and integration is a big issue when planning to migrate an existing application to cloud. This issue might be aggravated in a hybrid cloud scenario. Those applications which can not be easily ported to cloud environment, are not suitable for cloud.
  7. Sometimes existing applications can not be moved to cloud. There are no cloud counterparts for these applications either.
  8. We all know that cloud is a new IT services delivery model through Internet. Latency and slow Internet speed will be a bottleneck for cloud applications. In absence of high speed broadband, cloud computing can not deliver the services. In this scenario, cloud computing model should not be used.

I hope this discussion will be helpful in categorizing your applications that you might consider to migrate to cloud. You can eliminate some applications as these would not fit in any cloud environment. You need to consider existing applications that can be migrated (relocated to cloud), new applications that will leverage cloud (born on cloud) and some existing applications which are not yet ready or can not be moved to cloud at all. This analysis will be a big step in your cloud planning and strategy. Identifying right application areas and strategy will make your cloud journey smooth and CloudComfy (comfortable in adopting cloud, another new term!).

Share
Comments: 13
Shamim Hossain

About Shamim Hossain

Shamim is an experienced technical team leader and project manager leading a number of complex and global projects with involvement in the full project lifecycle ranging from planning, analysis, design, test and build through to deployment. He is an IBM Certified Cloud Solution Advisor and Cloud Solution Architect. As a Redbooks Thought leader and official IBM Cloud Computing and Smarter Computing Ambassador, he publishes regularly on http://thoughtsoncloud.com and http://www.smartercomputingblog.com. He holds a Master of Telecommunications Engineering and a Bachelor of Computer System Engineering (First class honours). His expertise and interests include different areas of cloud computing, mobile computing, optical fibre communications, broadband, Internet engineering and the Internet of Things. He is a published author. He co-authored a book entitled “Cloud Computing Service and Deployment Models: Layers and Management” by IGI Global.
This entry was posted in Cloud 101, Private Cloud and tagged , , , , , . Bookmark the permalink.

13 Responses to Clouduitability: Suitability assessment of applications in cloud

  1. Patty Brown says:

    To me PaaS and SaaS providers need to have their sales forces begin with a consultative approach. Know the research around what applications are suited to the cloud, industry trends, along with helping your client to clearly define internally what is their definition of cloud before positioning their platform, or channel developers of specific cloud applications. As my yoga teacher would say, "one breath at a time"…do your homework, be prepared and have your client see you as a consultant. Pretty basic stuff – but amazes me how often sales people forget the basics – do the work up front.

    • Hi Patty, thanks for visiting the blog and reading the post. I totally agree with you. No one should jump on the cloud bandwagon without proper assessment. As you mentioned, a consultative and phased approach is really important. Cloud delivery model is a very powerful tool but one needs to use it right.

  2. It is my opinion that when you talk of cloud services you have to take into account a myriad of factors in order to actually give a solid foundation into the reliability and security of "that" cloud. Like any piece of software whether its on the desktop, singularly hosted on a server or in a hosted service ( or a cloud service ) , it all comes down to the level of competence that is behind that piece of software/hardware. It is a complicated dance of talent , passion , skill and hard work that makes any piece of technology work at the limits of excellence. To simply define what should and should not be in the cloud , which in my opinion is simply an "always on" commodity that from a customers perspective which should never give them any trouble. To say its something else in my opinion is too simplified a definition. I believe that the concept of the cloud is a yearning or a desire through the interactions of overall organisations to allow them to move forward in the area of servicing customers through a more integrated overall organisational approach to software development. I think that we should be looking at cloud services as a paradigm shift in how we think of the the software development lifecycle, making the customer more part of the overall process. Look at the agile methodologies that have become present in recent times ( 30 years ;-) ) that tries to do this at the functional level…I see cloud services and technologies as adding to this at a deployment and operational level. It is almost evolutionary in bringing the focus to the areas that software development needs to bring its focus towards. We need as an industry, the software industry, to teach our graduates that their paychecks are directly proportional to the quality of the software that they produce. I am bringing this back right to the roots of the issue here as I truly believe that what we now call "cloud" in 20 years time will just be called software development. Lets get it right !

    • Thanks Andrew for your comment and analysis. I agree with you that cloud computing will become so mainstream that after some years it will be designated just as "computing". Obviously cloud has brought some design changes and a single transaction can invoke many more interactions end to end. Application design pattern and data center architecture are changing to adapt to cloud model. Not all applications are born for cloud. Neither these can be relocated to cloud. Suitability assessment will be an important part before starting an any cloud related project. I hope you agree with me on the points I presented in the blog.

  3. Hi Shamim. Excellent and helpful article. Thank you.

  4. I'm actually a little surprised that there are still some applications that aren't fully compatible or advisable for the Cloud – anything needing security most of all. I was pretty sure there would be some form of security application that could be integrated into the system. Looks like I was wrong – for now.

Comments are closed.