SaaS, PaaS and IaaS are the main three cloud computing service models. Each cloud service model covers different users’ and companies’ needs, and provides a different level of control, security and scalability.
SaaS (Software as a Service)
SaaS consist of delivering cloud-based applications to users over the Internet. In this cloud service model software is hosted online and made available to customers on a subscription basis or for purchase. SaaS cloud providers host applications in his network and users can access them through a browser or app, from different devices.
The provider is responsible for developing, maintaining and updating the software. From the users’ side, using SaaS products is as easy as logging in and starting using it online, without installing or hosting any software locally. The main disadvantage here is that end users don’t have much control over it; which can be a handicap for some businesses.
Software as a Service is the most common cloud computing service. We all use some SaaS products in our daily lives. Cloud-based software is widely used by companies to build their businesses, as it is easy to deploy, use, manage and scale. Moreover, SaaS has made collaboration among teams incredibly easier during the last decades. Some examples of SaaS are Google Suite, Dropbox, Acumbamail, Trello and Salesforce.
PaaS (Platform as a Service)
PaaS is a cloud service model that provides a ready-to-use development environment, where developers can focus on writing and executing high-quality code in order to create customized applications.
Platform as a Service is delivered via the web, allowing developers to build scalable and highly-available applications without worrying about the OS, storage or updates. It provides a framework developers can use for developing, managing, distributing and testing software applications.
This cloud service model makes the process of developing and deploying applications simpler and more cost-effective. PaaS is accessible to multiple users via the same development application and it integrates web services, database engines and more to help developers with app development, testing and deployment.
Cloud-based platform services allow to innovate faster, but PaaS customers only have control over what’s built on the platform. So, if there is a problem with the platform’s OS or hardware, they have no control over the impact it has on their software’s performance. However, they have control over anti-malware, access control, etc. Some examples of PaaS are Heroku, Google App Engine, Apache Stratos and OpenShift.
IaaS (Infrastructure as a Service)
IaaS is a cloud computing solution that consists of provisioning and managing computing resources over the Internet; such as servers, storage, networking and virtualization. Infrastructure as a Service provides the technology and capabilities of high-standard data centers to businesses without a significant capital investment on IT equipment. IaaS customers access their infrastructure via a dashboard or API, but they don’t have to physically manage it.
This cloud service model offers a lot of flexibility to companies, as they purchase computing resources on-demand, instead of buying their own hardware. This way companies increase efficiency, scalability, redundancy and security, while keeping control of their infrastructure. Moreover, by outsourcing their infrastructure, they also delegate its set up, management and maintenance; as a consequence, they can save a lot of money, time and efforts.
Unlike SaaS and PaaS, IaaS offers more control to customers as they are still responsible for their applications, data, runtime, middleware and operating system. Furthermore, in terms of security, while IaaS providers are in charge of ensuring that the infrastructure, storage and networking are completely secure, customers must take responsibility for aspects such as access management, encryption or network traffic protection.
IaaS can be used for many purposes: deploying web applications, running a CRM, doing Big Data analysis, storing data, backups and Disaster Recovery plans, and much more. You just need to choose the IaaS provider that better fits your needs and business strategy. Some examples of IaaS are Stackscale, AWS, VMware and Microsoft Azure. At Stackscale, we offer IaaS with virtualization in the form of Private Cloud and IaaS without virtualization through bare-metal servers.
Graphic comparison of on-premises, IaaS, PaaS and SaaS models
In the following image we have summarized which elements are managed by the customer (in black) and which are managed by the provider (in red) depending on the model they opt for — on-premises, IaaS, PaaS or SaaS.
To sum up, the IaaS model offers the computing resources companies need to host, build and run their services, the PaaS model provides an environment for developers to build and deploy applications, and the SaaS model delivers software to users and companies over the Internet; so that they don’t need to worry about its management and maintenance.