Software as a service (SaaS //) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. It is sometimes referred to as "on-demand software", and was formerly referred to as "software plus services" by Microsoft. SaaS applications are also known as on-demand software and Web-based/Web-hosted software.
SaaS is considered to be part of cloud computing, along with infrastructure as a service (IaaS), platform as a service (PaaS), desktop as a service (DaaS), managed software as a service (MSaaS), mobile backend as a service (MBaaS), datacenter as a service (DCaaS), and information technology management as a service (ITMaaS).
SaaS apps are typically accessed by users using a thin client, e.g. via a web browser. SaaS has become a common delivery model for many business applications, including office software, messaging software, payroll processing software, DBMS software, management software, CAD software, development software, gamification, virtualization, accounting, collaboration, customer relationship management (CRM), management information systems (MIS), enterprise resource planning (ERP), invoicing, field service management, human resource management (HRM), talent acquisition, learning management systems, content management (CM), geographic information systems (GIS), and service desk management.
SaaS has been incorporated into the strategy of nearly all leading enterprise software companies. According to a Gartner estimate, SaaS sales in 2018 were expected to grow 23% to $72 billion.
Centralized hosting of business applications dates back to the 1960s. Starting in that decade, IBM and other mainframe providers conducted a service bureau business, often referred to as time-sharing or utility computing. Such services included offering computing power and database storage to banks and other large organizations from their worldwide data centers.
The expansion of the Internet during the 1990s brought about a new class of centralized computing, called application service providers (ASP). ASPs provided businesses with the service of hosting and managing specialized business applications, to reduce costs through central administration and the solution provider's specialization in a particular business application. Two of the world's pioneers and largest ASPs were USI, which was headquartered in the Washington, DC area, and Futurelink Corporation, headquartered in Irvine, California.
Software as a Service essentially extends the idea of the ASP model. The term software as a service (SaaS), however, is commonly used in more specific settings:
The acronym first appeared in the goods and services description of a USPTO trademark, filed on September 23, 1985. DbaaS (database as a service) has emerged as a sub-variety of SaaS, and is a type of cloud database.
The cloud (or SaaS) model has no physical need for indirect distribution because it is not distributed physically and is deployed almost instantaneously, thereby negating the need for traditional partners and middlemen. Unlike traditional software, which is conventionally sold as a perpetual license with an up-front cost (and an optional ongoing support fee), SaaS providers generally price applications using a subscription fee, most commonly a monthly fee or an annual fee. Consequently, the initial setup cost for SaaS is typically lower than the equivalent enterprise software. SaaS vendors typically price their applications based on some usage parameters, such as the number of users using the application. However, because in a SaaS environment customers' data reside with the SaaS vendor, opportunities also exist to charge per transaction, event, or other units of value, such as the number of processors required.
The relatively low cost for user provisioning (i.e., setting up a new customer) in a multi-tenant environment enables some SaaS vendors to offer applications using the freemium model. In this model, a free service is made available with limited functionality or scope, and fees are charged for enhanced functionality or larger scope.
A key driver of SaaS growth is SaaS vendors' ability to provide a price that is competitive with on-premises software. This is consistent with the traditional rationale for outsourcing IT systems, which involves applying economies of scale to application operation, i.e., an outside service provider may be able to offer better, cheaper, more reliable applications.
The vast majority of SaaS solutions are based on a multi-tenant architecture. With this model, a single version of the application, with a single configuration (hardware, network, operating system), is used for all customers ("tenants"). To support scalability, the application can be installed on multiple machines (called horizontal scaling). In some cases, a second version of the application is set up to offer a select group of customers access to pre-release versions of the applications (e.g., a beta version) for testing purposes. This is contrasted with traditional software, where multiple physical copies of the software — each potentially of a different version, with a potentially different configuration, and often customized — are installed across various customer sites.
Although an exception rather than the norm, some SaaS solutions do not use multitenancy, or use other mechanisms—such as virtualization—to cost-effectively manage a large number of customers in place of multitenancy. Whether multitenancy is a necessary component for software as a service is debatable.
Although not all software-as-a-service applications share all traits, the characteristics below are common among many SaaS applications:
SaaS applications similarly support what is traditionally known as application configuration. In other words, like traditional enterprise software, a single customer can alter the set of configuration options (a.k.a. parameters) that affect its functionality and look-and-feel. Each customer may have its own settings (or: parameter values) for the configuration options. The application can be customized to the degree it was designed for based on a set of predefined configuration options.
For example, to support customers' common need to change an application's look-and-feel so that the application appears to be having the customer's brand (or—if so desired—co-branded), many SaaS applications let customers provide (through a self-service interface or by working with application provider staff) a custom logo and sometimes a set of custom colors. The customer cannot, however, change the page layout unless such an option was designed for.
SaaS applications are often updated more frequently than traditional software, in many cases on a weekly or monthly basis. This is enabled by several factors:
Accelerated feature delivery is further enabled by agile software development methodologies. Such methodologies, which have evolved in the mid-1990s, provide a set of software development tools and practices to support frequent software releases.
Because SaaS applications cannot access a company's internal systems (databases or internal services), they predominantly offer integration protocols and application programming interfaces (APIs) that operate over a wide area network.
The ubiquity of SaaS applications and other Internet services and the standardization of their API technology has spawned the development of mashups, which are lightweight applications that combine data, presentation, and functionality from multiple services, creating a compound service. Mashups further differentiate SaaS applications from on-premises software as the latter cannot be easily integrated outside a company's firewall.
Inspired by the success of social networking services and other so-called web 2.0 functionality, many SaaS applications offer features that let their users collaborate and share information.
For example, many project management applications delivered in the SaaS model offer—in addition to traditional project planning functionality—collaboration features letting users comment on tasks and plans and share documents within and outside an organization. Several other SaaS applications let users vote on and offer new feature ideas.
Although some collaboration-related functionality is also integrated into on-premises software, (implicit or explicit) collaboration between users or different customers is only possible with centrally hosted software.
OpenSaaS refers to software as a service (SaaS) based on open source code. Similar to SaaS applications, Open SaaS is a web-based application that is hosted, supported and maintained by a service provider. While the roadmap for Open SaaS applications is defined by its community of users, upgrades and product enhancements are managed by a central provider. The term was coined in 2011 by Dries Buytaert, creator of the Drupal content management framework.
Andrew Hoppin, a former Chief Information Officer for the New York State Senate, has been a vocal advocate of OpenSaaS for government, calling it "the future of government innovation." He points to WordPress and Why Unified as a successful example of an OpenSaaS software delivery model that gives customers "the best of both worlds, and more options. The fact that it is open source means that they can start building their websites by self-hosting WordPress and customizing their website to their heart’s content. Concurrently, the fact that WordPress is SaaS means that they don’t have to manage the website at all -- they can simply pay WordPress.com to host it."
Several important changes to the software market and technology landscape have facilitated the acceptance and growth of SaaS solutions:
Some limitations slow down the acceptance of SaaS and prohibit it from being used in some cases:
The standard model also has limitations:
According to a survey by HIMSS Analytics, 83% of US IT healthcare organizations are now using cloud services with 9.3% planning to, whereas 67% of IT healthcare organizations are currently running SaaS-based applications.
Software as a service data escrow is the process of keeping a copy of critical software-as-a-service application data with an independent third party. Similar to source code escrow, where critical software source code is stored with an independent third party, SaaS data escrow applies the same logic to the data within a SaaS application. It allows companies to protect and insure all the data that resides within SaaS applications, protecting against data loss.
There are many and varied reasons for considering SaaS data escrow including concerns about vendor bankruptcy, unplanned service outages, and potential data loss or corruption. Many businesses either ensure that they are complying with their data governance standards or try to enhance their reporting and business analytics against their SaaS data. Research conducted by Clearpace Software Ltd. into the growth of SaaS showed that 85 percent of the participants wanted to take a copy of their SaaS data. A third of these participants wanted a daily copy.
One notable criticism of SaaS comes from Richard Stallman of the Free Software Foundation, who refers to it as Service as a Software Substitute (SaaSS). He considers the use of SaaSS to be a violation of the principles of free software. According to Stallman:
With SaaSS, the users do not have even the executable file that does their computing: it is on someone else's server, where the users can't see or touch it. Thus it is impossible for them to ascertain what it really does, and impossible to change it.
[...] a new emerging option is represented by the Database as a Service (DbaaS) paradigm [...]. DbaaS is regulated by the same principles as Software as a Service (SaaS) and basically means the delivery of the typical functionalities of a database management system in the cloud.
Only 15 per cent of those who currently use, or plan to use, SaaS have no inclination to keep a copy of their data.