Information

What is a Software as a Service (SaaS)?

“Software as a service (SaaS) is a model of distribution of the application software where a producer develops, runs (directly or through third-party services) and manages a web application that is offered to its customers via internet.”
– "Software as a Service". Wikipedia. Retrieved 21st November 2019.


Software as a service (SaaS) is a software distribution model in which a third-party provider hosts applications and makes them available to customers over the Internet. SaaS is one of three main categories of cloud computing, alongside infrastructure as a service (IaaS) and platform as a service (PaaS).


The application’s source code is the same for all customers and when new features or functionalities are rolled out, they are rolled out to all customers. Organizations can integrate SaaS applications with other software using application programming interfaces (APIs). For example, a business can write its own software tools and use the SaaS provider's APIs to integrate those tools with the SaaS offering.



Advantages


SaaS removes the need for organizations to install and run applications on their own computers or in their own data centers. This eliminates the expense of hardware acquisition, provisioning and maintenance, as well as software licensing, installation and support. Other benefits of the SaaS model include:




Disadvantages


But SaaS also poses some potential disadvantages. Businesses must rely on outside vendors to provide the software, keep that software up and running, track and report accurate billing and facilitate a secure environment for the business' data. Providers that experience service disruptions, impose unwanted changes to service offerings, experience a security breach or any other issue can have a profound effect on the customers' ability to use those SaaS offerings. As a result, users should understand their SaaS provider's service-level agreement, and make sure it is enforced.



Configuration and Customization


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.



Accelerated feature delivery


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:




Open integration protocols


Because SaaS applications cannot access a company's internal systems (databases or internal services), they predominantly offer integration protocols[25] and application programming interfaces (APIs) that operate over a wide area network. Typically, these are protocols based on HTTP, REST, and SOAP.