Service Models
We highlighted the different application models for how an application can be created earlier. This section takes that discussion a step further by covering the different service models that can be leveraged for the application. These service models determine where the application is located and what elements of the application are owned and managed by the business. The following are the most common service models:
On-premises: On-premises is the service model where a business owns and manages an application. A business will procure all of the infrastructure required to run the service and then fully manage, maintain, and operate it. In some situations, the management is outsourced but the infrastructure is procured and owned by the business.
Software as a Service (SaaS): SaaS is where a vendor makes its software available to users, usually for a monthly or annual subscription service fee.
Platform as a Service (PaaS): PaaS is where a vendor provides hardware and software tools, and people use these tools to develop applications. PaaS users tend to be application developers.
Infrastructure as a Service (IaaS): IaaS is a pay-as-you-go service model for storage, networking, and virtualization—all of a business’s infrastructure needs. IaaS gives users cloud-based alternatives to on-premises infrastructure, so businesses can avoid investing in expensive onsite resources.
Table 3-3 shows the comparison between these service models.
Table 3-3 Service Model Comparison
Service Model |
Characteristics |
Advantages |
When to Use |
On-premises |
Business owned and managed. Available locally. Hosted within the business’s server environment. |
Full control over all components of the application. |
When a business requires full control of all components within the application. This is most often seen with security compliance and data classification requirements. |
SaaS |
Available over the Internet. Hosted on a remote server by a third-party provider. Scalable, with service offerings based on need. |
No need to install and run software on any computer. Everything is available to the end user over the Internet. Access to software can be from any device, at any time, with Internet connectivity. |
When a business wants an application to run with ensured availability but without the headache of maintaining that application at any level. |
PaaS |
Accessible by multiple users. Scalable. Built on virtualization technology. Easy to run without extensive IT knowledge. |
Primarily used by developers to create software or applications. Developers don’t need to start from scratch when creating applications. |
When a business wants to create a unique application without spending a ton of money or taking on all the responsibility. |
IaaS |
Highly flexible. Highly scalable. Accessible by multiple users. Cost-effective. |
On-premises IT infrastructure is expensive. The business maintains control over the infrastructure. |
When a business requires complete control over its infrastructure and wants to operate on a pay-as-you-go basis. |