Of all the various services offered via cloud computing, from storage to security to backup, it's Software as a Service (SaaS) that has proven to be the most popular. In many key ways, SaaS is the dominant model of cloud computing.
Today businesses can use all kinds of applications delivered using the Software as a Service model supplied by a range of cloud companies, including SaaS specialists such as Salesforce, proprietary software makers like Microsoft, and companies monetizing open source projects.
The rise in popularity of SaaS shows no sign of slowing. According to IDC, SaaS subscriptions were on course to rise by 20% in 2016, while conventional software license payments will have decreased by 1.7%
This overview of Software as a Service will detail the specifics of how this software delivery method serves users. It will list the benefits of SaaS, from reduced capital expenditure to greater flexibility, and also provide examples of when to use – and when not to use – SaaS. We’ll uncover some of the drawbacks of SaaS, and also highlight some of the leading vendors in this rapidly growing market:
Software as a Service, or SaaS, is a development of the application service provider (ASP) model that became popular briefly at the start of the millennium. ASPs generally offered multiple instances of third party applications, which they hosted and managed, enabling customers to access them remotely using a network connection for a monthly fee. Sometimes they offered to customize an instance for a particular customer – or at least offer a tailored configuration of the software.
SaaS is different because it involves offering access to software that has specifically been designed to run in the cloud, can scale almost indefinitely, and – perhaps most important – has been designed for multi-tenancy. That means that with SaaS there are huge economies of scale as multiple customers can use a single instance of the application at the same time, even though their data and any configurations are kept separate.
Access to SaaS applications is usually offered through a standard web browser, so there is no need to install or update any software locally (although some SaaS applications can also be accessed via dedicated apps on mobile devices such as tablets or smartphones.)
SaaS applications are generally charged for on a "per-user, per-month" basis, enabling companies to pay only for the usage that they require. Some Software as a Service companies offer free access to their application for a limited number of users or for a limited feature set, with various extra features sets available for different monthly subscription rates.
The SaaS model enables users to access software from a remote provider.
The reasons for the popularity of the Software as a Service model, offered from the cloud, is that it offers some valuable benefits, the most important of which are:
Reduced capital expenditure and predictable operational expenditure: Companies access Software as a Service in return for a monthly fee, so they pay for the software as they use it. Since it is the responsibility of the SaaS provider to purchase and maintain all the infrastructure required to run the application, companies that adopt Software as a Service can avoid the large up-front capital outlays on hardware and software licenses associated with running applications on-premise. Instead SaaS customers fund their software usage with predictable monthly operational expenditure. As in the IaaS and PaaS cloud computing models, SaaS customers can exit their contract if they need to.
Scalability: Software as a Service providers operate out of clouds with resources that are practically unlimited, enabling customers to scale their software usage almost indefinitely. That means that customers can pay for what they need: if they need to add users as they grow, or following an acquisition, they can do so almost instantly without worrying about resource capacity or needing to think about over-provisioning resources to allow for possible further expansion.
(The same is true in reverse: if SaaS customers decide to reduce their usage they can do so easily and their monthly costs will be reduced in proportion to reflect this. They won't be left with unused software licenses or hardware that is underutilized following a scaling-back of operations.)
Flexibility: Implementing a new application takes most businesses many months and involves purchasing and installing hardware, installing the software, implementing backup and disaster recovery procedures, testing, and rolling the software out to users. By contrast users can be up and running with SaaS applications in the cloud in a matter of hours.
More efficient software management: A Software as a Service provider running its software in the cloud can often manage its product on behalf of all its customers much more efficiently than individual companies running their own instances of an application in-house. That's because of economies of scale and because the SaaS provider builds up expertise running its own software.
SaaS customers also enjoy the benefits of software that is automatically updated with bug fixes and security patches – and upgraded periodically to include new features – without the need for any action on their part. (A side-benefit of this is that corporate IT staff can be freed from the often tedious and time-consuming tasks of maintaining software and carrying out upgrades to work on more productive IT tasks.)
Accessibility: Since SaaS applications are accessed over the Internet, that means that users can access the software from anywhere, using anything from an office PC to a tablet or smartphone. And because data is stored in the cloud that also means that there are no data synchronization issues: mobile workers can use the most up-to-date data, and any data that they enter is immediately available to all other corporate users.
Resilience: Since SaaS applications are hosted in the cloud, along with the associated data, that means that in the event of a disaster at a customer's premises the application and data will be unaffected and still be accessible from a backup location or via mobile devices (or even laptops in coffee shops.)
(It's obviously the case that a disaster could hit a cloud data center, but reputable SaaS providers have redundant data centers and back up data between them, so they are likely to be more resilient than an individual corporation.)
This also means that if an employee uses a laptop that they have been working on, they can access the SaaS application from another device, and no data will have been lost.
Software as a Service is a sensible alternative to on-promise software for applications that are commodities needed to run a business efficiently, but that do not give a company a specific competitive advantage. Examples of these types of applications include office productivity suites, CRM, HR, ERP, sales and marketing automation, travel and expense management, and practice management.
There is generally no benefit to running these types of applications on-premise, and when accessed as a service they provide the valuable business benefits outlined above. There is also an argument that SaaS providers gain expertise in their own fields and get feedback and feature requests from multiple customers, so SaaS applications are more likely to encompass best practices and offer more useful features when compared to equivalent software developed in-house.
Despite the many advantages of SaaS applications, they are commodities that generally offer a "one size fits all" solution. And all customers (including customers who are competitors) access the same application with the same features and benefits.
That means that SaaS is generally not an option to replace:
On-premise software that provides specific competitive advantages over rivals.
On-premise software that is highly customized to match a company's specific business processes. Using a SaaS alternative would entail re-engineering the company's business processes to match the SaaS application.
On-premise software that is highly specialized, and for which no SaaS equivalent exists, or for on-premise software which encompasses industry best practices better than SaaS alternatives.
On-premise software that uses data that is subject to strict privacy or security regulations which SaaS providers may not be able to comply with.
Despite the popularity of the SaaS model, there are some significant drawbacks that are more significant to some potential customers than to others. These include:
Security risks: Using SaaS applications necessarily involves moving data outside the corporate network and entrusting it to a third party. Although there are security standards that SaaS companies have to adhere to, and arguably they are likely to have more expertise and resources to dedicate to cloud security, entrusting data to a third party involves some risk.
Poor Performance: Since SaaS applications rely on a connection between the end-user and the cloud, it may be that insufficient bandwidth is available for the desired number of people to access Software as a Service with acceptable performance.
Difficulty integrating with other applications: Many applications run by businesses share data with other applications that the company uses. But if an application is run in the cloud that can make it harder for integrations to be carried out with applications run on-premise, or with other SaaS apps running in the cloud. The good news is that integrating SaaS applications is not nearly as hard as integrating on-premise applications, because they have usually been designed with exposed APIs for integration. Tools from vendors including Jitterbit, Dell Boomi, SnapLogic, Mulesoft, TIBCO Software and WS02 are also available to build integrations that are not already built in to SaaS applications.
Data availability and downtime worries: Any time data is stored outside the corporate network there is a danger that it will be inaccessible due to a service outage at the SaaS provider's cloud – although arguably this is likely to occur less frequently than an application outage in a corporate data center. A more serious problem is that a Software as a Service provider could go out of business, taking all the data with it.
A related problem is that Software as a Service customers risk being "locked in" to their SaaS provider if the provider does not have practical provisions in place for customers to retrieve their data or move it to an alternative SaaS provider within a reasonable timeframe and at a reasonable cost.
Lack of access to open source code: There are many benefits to using open source applications, including the ability to alter the code to suit particular needs. But when open source applications are accessed from the cloud using the SaaS model companies no longer have the capability to alter the source code, and are instead reliant on the SaaS provider carrying out customizations on the code that is offered as a service.
(The Gnu Affero General Public License is an open source license that requires that source code is made available to any user of the software that accesses it over a network. In other words, if the Gnu Affero GPL applies, SaaS customers are entitled to the application's source code, even if they cannot require SaaS providers to make changes to it.)