Most of the services provided by cloud platforms can be divided into three broad categories, namely, IaaS or Infrastructure as a Service, PaaS or Platform as a Service, and SaaS or Software as a Service. Let us take a look at these concepts one by one.
IaaS or Infrastructure as a Service, as the name suggests, are services where the cloud service provider is responsible for providing infrastructure requirements and the development team deploys any required software. A very simple use case is getting VMs from cloud service providers and deploying a service or application on that. In this case, the development team is responsible for installing any required tools or software on the VM and managing them.
PaaS or Platform as a Service reduces the responsibility of the development team and lets them focus more on the core task that is the development of applications and services. For example, Amazon provides Elastic Beanstalk service where one needs to deploy the code straightaway. No need to worry about the underlying hardware or setting up the runtime environment.
SaaS or Software as a Service, as the name suggests, provides a layer of abstraction on the actual software. When you are using a SaaS service you are not worried about the underlying complexity of how the hardware or OS or data is being managed. All you need to do is onboard to the service and start using it. For example, an email service provider like Gmail. when you create an account with Gmail, you are not worried about the fact that how the data is being processed or how the service will scale.