In what is sometimes referred to as a tiered cloud service model infrastructure, Platform as a Service (PaaS) is the second tier in that it builds on the provider’s responsibilities from the first (IaaS) tier. PaaS is designed to provide subscribers with a ready-made developmental platform that prevents them from repeatedly building out the virtual hardware and software infrastructure for a test system before they can run a new application.
Because the PaaS platform is accessible through the Internet like all cloud services, an organization with multiple developers working on the same project can provide them all with access to the test environment, even if they are located at different sites.
The PaaS model expands the cloud service provider’s responsibility over the IaaS model by adding the virtual network, operating system, middleware, and runtime layers, as shown in Figure 1-4. The greater the responsibility of the provider, the less that of the subscriber.
FIGURE 1-4 The shared responsibility model for PaaS
Unlike virtual machines using the IaaS model, the cloud service provider is entirely responsible for the VM operating system, applying updates and patches and performing maintenance as needed. The platform can also include (for an extra fee) additional components specified by the subscriber, such as development tools, middleware, and database management systems. The object of the PaaS model is to eliminate the need for software developers to do anything but actually develop, build, customize, test, and deploy their applications.
Serverless
The fees for PaaS and IaaS virtual machines are typically based on the resources they are configured to use and the amount of time they are running. However, serverless computing is another cloud service model for application development related to PaaS. In serverless computing (sometimes known as Function as a Service or FaaS), the cloud provider takes on even more server management responsibility by dynamically allocating virtual machine resources in response to application requests or events.
Pricing is based on the resources the VM is actually using. Therefore, this model can be less expensive than a PaaS VM that is incurring charges all the time it is running. In this instance, the term serverless does not mean that no server is involved; the name derives from the fact that the cloud subscriber does not have to provision a virtual machine on which the developer’s code will run.
SaaS
Software as a Service (SaaS) is the third tier of the cloud service model infrastructure, and in this model, the cloud provider is responsible for nearly all the layers. Only the people and data layers are left to the subscriber, as shown in Figure 1-5. This means the provider is responsible for the applications and all the layers beneath.
FIGURE 1-5 The shared responsibility model for SaaS
The SaaS model enables users to access cloud-based applications using a web or other thin-client interface without installing the applications first. The Office productivity applications are examples of an SaaS product, as are Microsoft Teams and other Microsoft 365 components. While Microsoft 365 makes it possible to install the Office productivity applications on a client computer, it is unnecessary for the user to do so. The applications are accessible directly through a web browser, with everything but the user’s own data files provided through the cloud.