Software-as-a-Service (SaaS), also known as Cloud Computing, has been a buzzword around technology circles for a few years now. We’ve seen its ease and capability in many different forms, from the popular Salesforce.com CRM application to our own Bynder solution.
However, some confusion still remains regarding what a SaaS application can do compared to software with a hosted option. While some similarities exist, those are far outweighed by the distinct differences between the two, and it’s important to distinguish what these are before you select an application provider.
In recent years, many companies have added a hosted option for their applications to compete with the SaaS deployment model. Some similarities are obvious — in both cases, the application is hosted off the customer’s premises. The differences become apparent when you examine the details under the proverbial hood; a hosted application is running on an off-premises server but may not necessarily be managed by the application provider. However, the SaaS model is built with off-premises hosting in mind, and is thus integrated within the application developer’s IT infrastructure.
A quick look at the architecture widens the gap even further. Because SaaS applications are usually accessed via a web portal and designed for a large customer base, they are built with multi-tenant architecture. In other words, every SaaS customer is running the same instance of the software without, of course, sacrificing customizability (branding, etc.); those types of options are made available through the application’s programming. For example, if your favorite SaaS application doesn’t allow you to run a branded version featuring your logo, that’s because the developers didn’t include it — not because SaaS can’t handle it.
Multi-tenant architecture is designed to run across the application’s entire user base. It factors in scalability and performance so that a small business in the Midwest can get the same quality and performance as a big Silicon Valley corporation. To do this, the architecture often includes load balancers to handle large amounts of web traffic. From a hardware perspective, the application runs across a multi server environment, allowing it to tap into dedicated machines such as database servers, web servers, and specialized servers fully committed to CPU-intensive tasks: image processing, computations, etc. The SaaS architecture includes redundancy of all system components to provide fail-over should one component stop working. All of this is designed to work smoothly and efficiently to handle a large volume of requests.
Now, let’s compare this to what a hosted solution provides. In general, an individual copy of the software runs in a single-server environment per customer. Not only is this expensive, its durability, scalability and reliability are limited by the hardware — there are no redundant or dedicated machines that pick up the slack for specific system components. For example, in this environment, a database-intensive request (such as heavy searching) can act as a bottleneck, causing the website to run slowly since the web server and database run on the same machine.
SaaS vs Hosted: The user experience
From a practical perspective, SaaS creates a service-oriented experience with dedicated teams that understand the software, hardware, and infrastructure needs of the application. Because the application’s design is built specifically for this model, support can be provided at all levels. On hosted solutions, the support team may have limited knowledge about the server and the architecture involved because all of that flows to an outside company. Similarly, SaaS software upgrades are instantaneous and experienced by all users at once because of the multi-tenant design. For hosted solutions, upgrading is often handled on a per-customer basis and the latest software version may require costly license upgrade fees.
Data availability is probably one of the most important priorities from a customer perspective. After all, if the customer can’t access the data, then it doesn’t matter what features come with the application. The SaaS model provides another benefit with its level of redundancy and backup. Multi-tenant architecture makes this all possible, and in general, customer data can be backed up in geographically distinct locations with a failover process and disaster-recovery plan in place. Hosted services depend on the actual hosting provider; in most cases, a single-server model is used without redundancy or frequent backup. An examination of reliability gives us the same picture: SaaS companies offer service-level guarantees or agreements (SLAs) that establish the customer’s standard for high availability. With the hosted solution, the same problem comes into play: since a third-party data center hosts the application, guarantees generally don’t fall into the domain of the application provider.
Hosted solutions and SaaS applications both have their spot in the marketplace. However, it’s important to know that just because a solution is hosted, it doesn’t necessarily offer the same scalability, reliability or functionality as a SaaS model. SaaS applications are built with the specific cloud infrastructure in mind, and because everyone is on the same page, fixes, updates, and support are all easier to provide. In short, it’s a more streamlined and efficient way to go, with fewer parties to deal with and a more dedicated focus from the provider. For these reasons, studies from groups such as Forrester Research cite SaaS as one of the key technology trends for business, both for now and for years to come.