Event
{Event}  MongoDB is going on a world tour! Gather your team and head to your nearest MongoDB.local. Learn more >

Software-as-a-Service (SaaS) Definition and Examples

With the cloud becoming more common and popular as a way to host and run a variety of applications, infrastructure, and services, you may hear the term Software-as-a-Service (SaaS) more often.

This article will cover what SaaS is, advantages and disadvantages, choosing when to use it, where to host it, and examples.

Table of Contents

What is SaaS?

SaaS stands for Software-as-a-Service. It is a cloud computing-based service that is generally subscription-based. The idea behind SaaS is that as a client, you do not need to worry about the underlying hardware and infrastructure to run an application and can access it from anywhere, when required, as long as you have a stable internet connection.

How does Software-as-a-Service work?

Software-as-a-Service (SaaS) is usually delivered via the cloud. A vendor will host their application on the cloud. They will take care of maintenance, updates, and infrastructure. The vendor may host the application on their own cloud service if applicable, or use a third-party cloud provider such as Azure, Amazon Web Services (AWS), or Google Cloud Platform (GCP).

The users of the software can then access the applications via the internet, often from a web browser, usually with a subscription to control access.

SaaS architecture

SaaS applications often use a multitenant approach. This means that the software is hosted only once, but is available for each subscribed user or tenant.

The users won’t see that the application is actually one single instance of the server or cloud host, but it means only one single managed instance for the vendor.

The data is segregated between users which means privacy, with no data shared unless requested.

SaaS Architecture diagram showing data, server and application in the cloud, accessed from mobile and laptop

Software-as-a-Service characteristics

Although not always sharing the same characteristics, the following list is applicable to most SaaS examples:

Multitenant architecture

  • All applications and users have access to a single, common infrastructure that is centrally maintained.

Improved access

  • Because SaaS applications are often cloud-hosted, the applications are available anywhere from a device connected to the internet.

Customization

  • It is common for SaaS providers to add the ability to customize their products in a limited way to add logos or branding to the tenant of the application. This won’t affect the functionality but adds a look-and-feel that matches the client brand.
  • Additionally, it is also possible to configure the application, to control what functionality is or isn’t available. Pricing might change depending on the functionality enabled on the tenant.

Faster updates

  • A centrally managed application such as a SaaS program can more easily be updated due to only needing to make changes in one location. This leads to more frequent updates for maintenance and new features.

Integration

  • Application Programming Interfaces (APIs) are often made available to allow for integration with client systems. SaaS applications cannot access clients’ internal systems and data, so APIs mean that integration can happen between the SaaS application and other pieces of software.

Difference between SaaS, PaaS, and IaaS

SaaS, PaaS (Platform-as-a-Service), and IaaS (Infrastructure-as-a-Service) are all different types of cloud computing and cover different parts of the stack, from hardware up to full platforms, allowing control over everything from the operating system to the database applications.

Learn more about the differences between SaaS, PaaS, and IaaS.

Advantages of using SaaS

Many of the characteristics of a SaaS application are also advantages.

Upfront effort

  • One big advantage of SaaS is the ease of getting set up. There is no need to set up any servers, databases, or applications in order to get started. For example, with MongoDB Atlas, the database in the cloud, you can get set up with a cluster and sample data in just a few clicks. All maintenance once deployed is taken care of by experts.

Updates

  • A centrally managed application makes maintenance and monitoring far easier as there is only one single version to apply this to. This means more frequent updates and faster delivery of new features.

Ease of access

  • SaaS applications can be accessed from any device with an internet connection, as long as privacy and security settings allow so. This opens up possibilities for remote working in a globally distributed economy.

Initial cost

  • Another big advantage of SaaS is that there is no initial cost required for hardware, operating systems, and additional software. On-premise requires the cost of the infrastructure it runs on, both the server and internet, as well as electricity, software, and system administrators.

Scalability

  • Cloud-based SaaS vendors often offer vertical scalability options, such as access to fewer or more resources or features depending on demand.

Challenges and risks associated with SaaS

Although there are many advantages to SaaS, there are of course challenges and risks associated with it.

Updates

  • Although the maintenance and updates being the responsibility of a third party can be an advantage, it also carries the risk of the third party not being able to do this and the client being let down. This could be due to not fixing issues, not developing new features, or not installing important updates including ones relating to security. This could mean a security breach impacting the data of one or multiple clients.
  • It is also possible that unavoidable updates will be installed that change the user interface (UI) or how the system works, and this will cause a reduction in productivity as users get to grips with the changes, or even high training costs for staff.

Availability

  • With the internet often being the way of connecting to the SaaS application, any internet downtime—at the client end, vendor end, or in-between—can lead to a lack of availability. This wouldn’t happen if the application was running locally.
  • An internet-based model also introduces potential latency for connections which could be an issue for online transaction processing type requirements.

Architecture

  • There can be limited customization options. The level of these options will depend on the vendor, and the amount this matters will depend on the client. But some enterprises will want a greater level of customization.

Adaptability

  • When it comes to data, there is a challenge around changing SaaS vendors. Over time, usage of a vendor will accrue large amounts of data, especially in enterprise, and having to transfer large amounts of data between providers will be slow and possibly very difficult or impossible.

SaaS versus on-premise

It can be hard to choose between SaaS and on-premise when deciding on a software service. However, there are some basic questions that can be answered to help with this choice.

Will off-the-shelf SaaS products offer the functionality required?

  • If the answer is yes, SaaS may well be the answer. With the lower levels of responsibility for maintenance and installation, a client can get up and running much faster.

What customization options will be required?

  • Basic branding such as logo and colors can often be changed, so if this will suffice, SaaS is still a great option.

How much budget is available for a SaaS solution?

  • Many SaaS vendors offer payment models that allow for spreading out the cost over time, so this helps not only enable smaller businesses but also adds to the advantage over paying for on-premise hardware and software.

How much does data ownership matter?

  • Most vendors of SaaS applications give ownership of their own data to clients. However, when deciding between SaaS and on-premise, it is important to read the fine print if data ownership is important.

Choosing the right SaaS product

When it comes to choosing the right product, this all depends on the requirements. There are a few basic things to consider:

  • Cost
  • Existing knowledge of the product
  • Availability of training or consulting services
  • Support availability
  • Ease of data migration
  • Features and functionality

Examples of SaaS products

There are many SaaS products available that fall under many different categories but here are a few examples:

MongoDB Atlas

  • This is a Database-as-a-Service hosted in the cloud which can be set up with just a few clicks and supports a flexible and scalable storage of data in documents.

Slack

  • This is a messaging service that also supports voice and video calls.

Contentful

  • This is a headless content management system (CMS) often used in conjunction with websites.

Microsoft Office 365

  • The Microsoft Office Suite of products (Word, Powerpoint, Excel, etc.) is available via subscription and in the cloud.

Dropbox

  • Dropbox is a cloud-based file storage service, allowing backup and access to files from any internet connected device.

Adobe Creative Cloud

  • You get access to Adobe’s wide range of software products for creativity including Photoshop for image editing, Premiere Pro and After Effects for video editing and creation, XD for design, and Illustrator for drawings.

Trello

  • This is a project management tool, most known for its Kanban board-style task management.

What is the future of Software-as-a-Service?

SaaS is said by market experts to have a bright future. With the rise of collaboration across teams and companies all globally distributed, SaaS will continue to play a larger role.

Artificial intelligence (AI) is also going to play a big role. AI can be used for natural language processing (NLP), identifying data patterns, and even improving security. Paired with SaaS, this allows for more control over business processes.

With the subscription model making many SaaS applications affordable to more people, the number of SaaS products and numbers of users will only increase.

Use cases for SaaS and MongoDB

Summary

In this article, you have learned about what SaaS is, how it works as well as the benefits, risks, and challenges. This will help steer you towards making a decision between SaaS products and a self-hosted solution on-premise.

You also learned about different examples of SaaS including MongoDB Atlas, a cloud-hosted Database-as-a-Service.



FAQ

What is SaaS for?

SaaS is used as an alternative to traditional self-hosted software solutions. It is a subscription-based model allowing access to as many features as required available in a product or suite of products. The software is cloud-hosted and so allows for access from any internet-connected device. It is used for when a client does not want to be responsible for the underlying infrastructure and maintenance.

What is a SaaS product?

A SaaS product is one that is available from a third party. The product is centrally hosted in the cloud, with the vendor responsible for the hardware, infrastructure, updates, and maintenance. It is generally available as a subscription-based service with some ability to customize features and style.

What are examples of SaaS?

Some well known examples of SaaS are Microsoft Office 365, Google Apps, Slack, Trello, Dropbox, and even MongoDB Atlas.

Learn more about MongoDB Atlas.

What are the business benefits of SaaS?

For businesses, SaaS can help reduce upfront costs as well as the costs of ongoing support and maintenance. The subscription-based model, supporting a more rolling payment structure, can help small businesses adopt SaaS applications faster—not just enterprises. The cloud-hosted solution also means access from more locations and not just in an office environment, supporting the more globally distributed style of today’s workforce.