There are numerous ways in which enterprises can leverage the cloud computing services. Each of the cloud computing service models come with its own advantages, and the variety of options as well as the elasticity in all service tiers is one of the primary reasons why cloud computing is becoming so popular. However, given the many options, it is vital for the enterprises also to be aware of certain drawbacks of cloud computing deployment and service models. In this posts, I outline one use case for each of the cloud computing service models, namely for the IaaS, PaaS or SaaS and see their applicability to different cloud deployment models.
IaaS, PaaS or SaaS?
Before we go into details of each of the use cases, let’s first summarize the differences between IaaS, PaaS or SaaS.
Figure 1 – The Differences Between IaaS, SaaS & PaaS (Frampton, K. and Frampton, 2013).
IaaS is an underlying hardware resource, where user manages software, runtimes, data, security, databases as well as application logic and business processes. PaaS is like IaaS, except user only administers the application itself and data. SaaS is a complete abstraction from resources, where the user only manages the application related data.
Infrastructure as a Service (IaaS) and Private Deployment Model
Use Case: Improve Capacity of Current Data Center Infrastructure for Unpredictable Workloads
The use case is mostly concerned with an organizational need to handle the possible random and unpredictable spikes in workloads. Ability to handle such production workloads is an excellent use case for cloud IaaS service model, primarily because the cloud IaaS is characterized by its rapid elasticity, as well as option to pay on demand (measured services). These two cloud characteristics are in fact one of the biggest advantages of IaaS for this specific use case.
It is important to mention that before the cloud came with its ability to easily add and scale resources using Infrastructure as a Service model, any increase in enterprise infrastructure reliability and performance used to be a very expensive exercise. As a matter of fact, the IaaS service model bridged the gap in the market, because it brought the ability to scale infrastructure not only to enterprises but to everyone who may have such demands. The IaaS model reduces the cost, better manages an infrastructure waste and better handles various inadequacies of scaling infrastructure on premise.
The use case I mention, performs well in Private deployment model, because of the ability to scale private infrastructure on demand, accompanied by the high level of automation, ease of integration, excellent SLA uptimes, multi-level security, and reliability, are very cost-effective ways of acquiring additional infrastructure. However, it would works nicely in a Public deployment moment, as opposed to an option of buying on-premise hardware and equipment, which may only be used to cover the spike in resource usage.
Some of the most well-known IaaS examples are IaaS models offered by the: Amazon Web Services (AWS), Google Compute Engine (GCE) and Microsoft Azure.
Platform as a service (PaaS) and Public Deployment Model
Use Case: Transitioning to Affordable Application Development
The businesses today strive to deliver a better level of client care and often want to move away from desktop development solutions supported at a high cost, to a world of web-developed applications. However, the issue of cost was prohibiting such transition until the cloud arrived with the Platform as service offerings. The PaaS cloud model truly emerged as a winner in the race to alleviate these prohibitive cost issues, and numerous cloud providers now offer web development platforms in the cloud to lessen the costs associated with application development.
The affordable application development use case situates the PaaS as an excellent example for the Public deployment mode. It is primarily because the client controls software deployment through configuration consoles, and the PaaS provider takes care of the rest of the issues, including providing underlying hardware such as servers, networking, hard drive space, operating systems, as well as other middleware, like various runtimes, databases, and services. The bottom line, the app development use case works well in the public deployment scenario, where PaaS acts as a software deployed on a public infrastructure allowing developers to develop, assess, test as well as deploy the application in one all-inclusive environment
“The most prominent among the services offered by these providers is the Platform-as-a-Service (PaaS) model, which provides businesses with an independently maintained platform upon which their web applications can be built, refined and deployed. Public PaaS is delivered by a services provider for building applications. Examples include Salesforce Heroku, AWS Elastic Beanstalk, Microsoft Azure, and Engine Yard.” (Apprenda, 2017).
However, it is important to note, that according to the NIST definition of cloud computing, “PaaS can also be delivered as a private service (software or appliance) inside the firewall” (Mell & Grance, 2011).
Software as a service (SaaS) and Public / Private Deployment Model
Use Case: Transitioning from Exchange to Cloud-Based Corporate Email and Calendaring
Software as a service (SaaS) is essentially an ‘on-demand software’ or in other words ‘applications-as-a-service’ because it refers to a software application that is carried to the end client as a service over the Internet. SaaS became popular primarily due to low capital as well as operational overheads.
The SaaS model is an excellent candidate for use cases such as the one in which a corporation wants to move from internally hosted Exchange email to a cloud-based corporate email, calendar or other office tools. The SaaS brings numerous benefits to an enterprise, because not only their employees gain access to email or calendar from any system that has access to the Internet, but it is often much cheaper to host online. According to Rackspace (2017), the three-year cost of ownership for hosted and on-premises Microsoft Exchange for 1,000 Users can be as much as 100% cheaper (Figure 2). It is imperative to note that the actual on-premise scenario is frequently even more expensive than outlined in Figure 2 because the management of in premise Microsoft Exchange often requires a dedicated mail server administrator human resource, which can further inflate the costs.
Figure 2 – The three-year cost of ownership for hosted and on-premises Microsoft Exchange (Rackspace, 2017).
As we can see, SaaS email essentially enables any enterprise to get up and running with their email in the cloud with a minimal upfront and ongoing fee. The SaaS cloud provider in the email use case essentially provides a complete solution, which comes bundled with an entire underlying infrastructure and to which employees connect over the Internet, typically through a desktop app or a web browser. The cloud provider in a SaaS model manages the hardware as well as email/calendaring software, and it is solely responsible for the availability as well as the security of the email application. The above use case applies to Public model (e.g. Office 365) or Private model (e.g. Microsoft Office Online on premise).
According to Microsoft (2017), when an organization decides to implement software on demand as a solution for their enterprise software needs, internal information technology services can become more efficient, since IT personnel is no longer required to focus on the installation, maintenance, and support of enterprise software and the hardware that supports such software. The efficiency gains delivered by software on demand frees up IT personnel for the more important task of managing IT resources as a strategic tool to optimize their business operations.
Mell, P., & Grance, T. (2011). The NIST definition of cloud computing. Special Publication 800-145 [online] Available at: http://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-145.pdf [Accessed 2 Jun. 2017].
Frampton, K. and Frampton, V. (2013). The Differences Between IaaS, SaaS & PaaS. [online] SmartFile. Available at: https://www.smartfile.com/blog/the-differences-between-iaas-saas-and-paas/ [Accessed 4 Jun. 2017].
Apprenda. (2017). PaaS Examples: Platform as a Service Providers | Apprenda. [online] Available at: https://apprenda.com/library/paas/paas-examples-platformasaservice-options-to-consider/ [Accessed 4 Jun. 2017].
Microsoft (2017). What is SaaS? Software as a Service | Microsoft Azure. [online] Available at: https://azure.microsoft.com/en-ca/overview/what-is-saas/ [Accessed 4 Jun. 2017].
Rackspace (2017). White Papers Home | Rackspace Support Network. [online] Available at: https://support.rackspace.com/whitepapers/ [Accessed 4 Jun. 2017].