In my previous article, The Basics of Cloud Computing, I briefly summarized the different types of Cloud Services:
- Software as a Service (SaaS)
- Platform as a Service (PaaS)
- Infrastructure as a Service (IaaS)
- Function as a Service (FaaS) 1
Software As A Service
Software as a Service (SaaS) differs from the traditional software model in that the application is installed and configured within a cloud platform. Most SaaS developers use cloud service provider to develop their applications, such as Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure.
Examples of SaaS:
- Google Docs
- Netflix
- Shopify
- Slack
- Zoom
Each of these services offers an application that is primarily managed & deployed within a cloud context, as opposed to being installed entirely on a user's machine. Although in some cases a user may have a locally installed interface, the majority of the computing & data management is done remotely. Typically with SaaS applications, a user is required to have access to the internet to have full functionality.
Basic Benefits
In contrast to traditional applications, SaaS software is rental software, for which you subscribe to access an already developed and cloud-based software application. One benefit of cloud-based software is that it can often be accessed using a web browser on any device, including a mobile phone or tablet.
One of the biggest benefits of SaaS software distribution is that it saves organizations from having to invest heavily in hardware or run the app locally. Instead of purchasing a software license and installing the software on a variety of computers, companies can subscribe to a browser-based SaaS application that is hosted by the developer. Also, the initial setup costs for a SaaS application are generally lower than that of traditional business software.
SaaS applications also tend to offer more consistent experiences since there is minimal need for a local state that is dependent on a users' machine. All or most user configurations can be stored in the cloud and are available without additional setup when a user changes the device they're using to access the application.
Security & Data
SaaS applications can be in many cases more secure because data and computation are done inside of well managed data centers. In comparison, local applications can be compromised when a user's machine has been exposed to malware, stolen, or exploited in other ways.
Most cloud service providers have security measures that, when the application and Virtual Private Cloud (VPC) are configured properly, make it extremely difficult for data to be compromised.
Similarly, SaaS applications protect data in the event of hardware failure. Most cloud service providers provide some amount of redundancy so that in the event of loss the data can be quickly restored from a backup copy. Application data and services can additionally be replicated across data centers, which can exist in different geographic regions; users can be rerouted to accommodate for the inability to access data and services in a specific region. Servers used by SaaS applications can be redeployed and scaled quickly and without disrupting the user experience.
Subscription & Service
SaaS allows applications and functionality to meet demand dynamically, consistently, and at scale. SaaS solutions are great for businesses as they reduce the upfront cost of software, usually through a subscription model. Typically you can cancel your SaaS subscriptions at will and without breaking a contract if you dislike the software or find that it doesn't suit your needs. Most SaaS subscriptions also offer options to pay much less by purchasing a license upfront for 3-month, 6-month, or 1-year intervals.
The majority of SaaS products provide multiple tiers of licensing which may be used by multiple tenants. Software updates and patches are included with your subscription. In most cases, upgrades can be done without the user needing to make additional installations, through server-side & over-the-air updates.
SaaS dramatically reduces the cost of maintenance and tech support, as these are usually included with your license.
Another nice thing about modern SaaS applications is that many developers provide an accompanying Application Programming Interface (API), which allows customers to create custom integrations that further extend the functionality of the application or allow your application to connect with other, unrelated applications. Slack, for example, can be customized with proprietary plugins and also features a robust marketplace where you can download or purchase plugins developed by other individuals and organizations.
Types of SaaS
Some SaaS applications are pure, in the sense that they can be used completely within a browser- although some will still cache certain types of non-essential data locally to improve performance and speed.
Hybrid SaaS applications extend the capabilities of traditional software using cloud technology, as in the case of Adobe Creative Cloud products. Adobe Photoshop, for example, can be accessed and used offline but offers additional features such as cloud storage and access to subscription-based digital assets when connected to the internet.
Enterprise implementations of SaaS applications may additionally be self-hosted by an organization within a Virtual Private Cloud (VPC) or on-premises data center2, as opposed to the software being available through the public internet or a cloud infrastructure provided by the developer.
Your organization may choose to have its developers manage the application on behalf of the business. In this arrangement, the application developer (vendor), provides solutioning/support and software updates but are not necessarily responsible for the underlying infrastructure that enables the application (servers, storage, and computational resources). This implementation of an application requires an appropriate license, the cost of which may be determined by the scale of your business and how the application is used, or customized through a consultation with the vendor.
One last thing...
When deciding if SaaS applications are right for you, it's important to consider data privacy & ownership. For work that involves sensitive data, certain applications (or implementations) may not meet the regulatory requirements of your industry. Also, consider whether the end-user-license-agreement (EULA) guarantees the ability to export proprietary data if your business needs change.
The topic of data privacy and security is worthy of its own extensive article. Although it's not the focus of this post, please know that it is a critical aspect to think about when you're determining what applications are right for your needs. Before subscribing to a SaaS application, for your business, the best option is to always work a Solutions Consultant, who can analyze your business needs and determine if the product in question is a good fit. A Solutions Engineer/Consultant will generally have an intimate understanding of how the application works and can answer questions that may not be available through a public search engine or the FAQ page.
The odds are that most of the apps you use these days are SaaS applications. Most people take for granted how the applications they use work and how they are enabled with cloud technology. The ubiquity if the internet has made SaaS the best options for most use-cases, in terms of cost and quality-assurance. The inherit risks of not being in direct ownership of data and computation is often outweighted by the conveniece that these applications provide. It's always good to understand the basics of how modern software works. As technology becomes more integrated into society SaaS applications will be the primary means by which individuals are able to generate, work with, and store data.
Additional Resources
- HelloTracks.com: What is SaaS and how it can help your business.
- Tenfold.com: What is SaaS and how can it help your business?
- Nimble.com: What is the Software as a Service (SaaS) Model?
- IBM.com: Top 5 Advantages of Software as a Service
- Techradar.com: What is SaaS?