Software-as-a-service (SaaS) is a form of cloud computing that delivers a cloud application—and all its underlying IT infrastructure and platforms—to users. It can be an ideal solution for large enterprises, small businesses or individuals that:
- Do not want the responsibility of maintaining infrastructure, platforms, and software.
- Have challenges that require minimal customization to solve.
- Favor software subscription models.
SaaS reduces users’ upfront costs by eliminating the need to permanently purchase software or invest in a robust on-premise IT infrastructure—as is the case with traditional software. Users should invest in fast network hardware, however,since service performance is determined by internet connection speeds.
Examples of SaaS include consumer-facing services like Google Docs and Microsoft Office 365, as well as enterprise services that deliver human resource software, content management systems, customer relationship management tools, and integrated development environments (IDEs).
Typically, a cloud service provider (like AWS, Azure, or IBM Cloud) manages the cloud environment on which the software is hosted. SaaS applications take advantage of multitenant architecture to make use of pooled resources. Software updates, bug fixes, and other general app maintenance are taken care of by the SaaS provider. Users interact with the software through a web browser on their computer or mobile devices. They may use application programming interfaces (APIs) like REST or SOAP to connect the software to other functions.
The nature of SaaS makes it easier for providers to roll out new features to their customers. Most SaaS applications are preconfigured plug-and-play products where the SaaS provider manages everything behind the app, including:
SaaS apps largely rely on subscription models for provisioning software licenses. Unlike a perpetual license, this software delivery model ties each account to a subscription that grants SaaS access for a period of time—usually on an annual or monthly basis. That subscription fee generally grants access to product documentation and ongoing support governed by a service level agreement (SLA), but some SaaS providers charge additional support fees to make custom code changes at the source code level.
The term as-a-Service generally refers to a solution that is managed by someone else so you can focus on what’s important, like iterative improvements of custom apps. In addition to SaaS, other major as-a-Service options can include Infrastructure-as-a-Service (IaaS) and Platform-as-a-Service (PaaS).
IaaS means a provider manages the infrastructure for you—the actual servers, network, virtualization, and storage—via a cloud. The user has access to the infrastructure through an API or dashboard, and the infrastructure is rented. Users manage things like the operating system, apps, and middleware while the provider provides the hardware, networking, hard drives, storage, and servers—and the provider is responsible for taking care of outages, repairs, and hardware issues.
PaaS provides hardware and an application-software platform to users from an outside service provider. Since users handle the actual apps and data themselves, PaaS is an ideal solution for developers and programmers. PaaS gives users a platform on which to develop, run, and manage their own apps without having to build and maintain the infrastructure or environment that apps need to run.
Software vendors provide SaaS-style software applications to meet any number of business needs from basic business applications to complex enterprise resource planning (ERP) suites. Some examples include:
- Intuit TurboTax
- Slack’s messaging service
- Microsoft Office 365
- Dropbox’s file storage service
- Google's web apps
We’ve improved the SaaS subscription model with a benefit most as-a-Service solutions lack: source code access. That means you get the immediate applicability of a preconfigured, web-based application along with the opportunity to customize the software however you need.
Best of all, every subscription includes support. That’s advice and guidance to help you deploy, configure, and manage whatever as-a-Service Red Hat offering you use.