In the first article on ‘demystifying the cloud‘ we attempted to provide a simple explanation of the similarities between ‘The cloud’ and ‘The desktop’.
Today in the second article we dive a little deeper and look at some of the fundamental differences between ‘standard’ software and Software As A Service (SaaS).
When selecting new software to do a specific task, you will often have to choose between “standard” (desktop) software and software-as-a-service (SAAS). In the traditional definition, standard software is software your organisation buys and installs on your organisation’s servers or desktops. By contrast, SaaS software is software that you “rent” and is hosted “in the cloud” and accessed via the internet.
So what are the significant differences between these two types of software?
Here are seven distinguishing factors:-
One of the primary advantages of traditional software especially in the Enterprise is the ability to customise the software. Because you own the software, you can customize the software as needed to address your needs. With SaaS software, customization is typically limited to whatever options the SaaS provider offers. Because a SaaS offering is typically in a multi-tenant environment pure customisation is simply not possible (since customising would, by definition, change the application being used by other organizations).
- Multi Tenancy
Multi-tenancy is an architecture in which a single instance of a software application serves multiple customers at the same time. Each customer is called a tenant. Tenants may be given the ability to customize some parts of the application, such as color of the user interface (UI), but they cannot customize the application’s code.SaaS Multi-tenancy is economical because software development and maintenance costs are shared. Whereas with single-tenancy, an architecture in which each customer has their own software copy and may be given access to code (Standard or Enterprise software) the costs are borne by the one client. With a multi-tenancy architecture, the provider only has to make updates once. With a single-tenancy architecture, the provider has to touch multiple instances of the software in order to make updates.In cloud computing, the meaning of multi-tenancy architecture has broadened because of new service models that take advantage of virtualisation and remote access. A software-as-a-service (SaaS) provider such as Dynamax, for example, can run one instance of its application on one instance of a database and provide web access to multiple customers. In such a scenario, each tenant’s data is isolated and remains invisible to other tenants.
With standard applications there is a complete disconnect between the application itself and the underlying Infrastructure (Hardware). In other words if the Infrastructure that is hosting the application becomes overburdened by the number of users, or the size of data transfers, then the IT department have to either increase the size of the server, or create a group of servers that increase the available resource to accommodate the demands. This sounds fine, but just imagine that you have users all over the world, and one server is not enough between 9am and 6pm GMT Mon-Fri, but more than enough outside of these hours. Are IT expected to run up and tear down servers to meet demand or simply throw more servers at the problem even when they are not needed 24/7?
Because a typical SaaS application such as digitalsignage.net runs on a PaaS/IaaS system such as Amazon EC2 that itself supports scalability through a rich set of APIs then the application itself can simply run up more instances (Servers) of itself when demand is high and then reduce the number of instances (Servers) when demand is low (mimimum being one of course to maintain a service). This is far more cost effective than the traditional way of resourcing servers.
- Price / Cash Flow
Standard software pricing tends to follow this model: software licensing, software maintenance, and customization/services. SaaS pricing tends to follow this model: monthly fee and services. Because you are purchasing software at the desktop/enterprise level (rather than renting, as in the SaaS model), your initial costs will be much, much higher, sometimes by a factor of 100 or more. The result is that initial costs for SaaS software will be significantly lower than enterprise software. Over time (typically 5 to 7 years) the total cost of ownership for SaaS and enterprise software will converge. But for SaaS offerings, that cost is spread over 7 years, rather than being front loaded into the first year.
- Ease of Installation / Ease of Upgrade
For a typical SaaS offering, the application itself is installed and ready to run the instant you sign the contract. Obviously setup, and training has to occur in order to use the software, but installation is a non-issue. Related to that, upgrades are pushed out automatically to all users, which means upgrades occur and with little fanfare and no effort on the part of the user. In addition, a SaaS offering often requires no “maintenance” or tuning on the part of the client.
- Training and ongoing support
Standard software tends to include several days of onsite training, while SaaS offerings tend to provide online/on-demand training. Onsite training tends to provide for more in-depth discussion of issues and may be more focused on organization-specific needs (at a cost of course), while on-demand training is, by definition, much more generic. Of course, on-demand training is available whenever you need it. Some companies (Dynamax being one) also offer onsite training of our SaaS application for those that prefer that method of training delivery.
- Ease of trialing
Anyone wishing to trial standard (but especially Enterprise level) software will quickly realise what a pain it can be. First you have to speak to the vendor (who then has your contact details) to get a copy of the software and appropriate temporary license key, then you have to make time to install it, once you have secured a spare PC / Server to install it on. Then of course in order to do the software justice with your evaluation you have to have some level of training (especially important with expensive Enterprise software). Once all this is in place only then can you conduct a fair trial of the application. All this can be burdensome, not to mention the phone calls from the vendor trying to close the deal.
SaaS software can typically be trialled just by entering some very basic contact details, and as all the training resources tend to be online and self service, the learning curve is much easier. Also SaaS vendors tend not to be as ‘noisy’ when it comes to following up with prospects. This is because generally SaaS vendors have tweaked their sales & marketing functions to keep the cost of ‘customer acquisition’ to as low a level as possible (given the monthly cost of SaaS it’s not really surprising). This means most contact is via email, with an appropriate unsubscribe link to stop the chatter.
In our next Cloud article we shall look at PaaS – Platform as a service, and how it dovetails in with SaaS and IaaS technologies.