Trends: What's all the fuss about True SaaS, OnDemand, Hosting?

•As many of you know, there's mass confusion out there about what's really SaaS, so time to clear the air on this topic. I'm going to give this some common definitions and hopefully this will help us figure out what's what and where the trade-offs are in all these deployment options.
  1. Single Instance - (a.k.a. "On Demand"). Think traditional apps deployed one cusotmer per app or per server. Many vendors provide hosting capabilities. Customers don't worry about the IT infrastructure and retain the flexibility to modify, customize, and in most cases choose when they want to change the code. All customers can use different versions of the software
  2. Multi Instance - (a.k.a. "Server Virtualization"). Think "VMware" like. Apps deployed into a shared-web hosting environment. A copy of the app is configured and deployed into a web directory for each customer. Vendor benefit from easier to manage environments. Customers don't worry about the IT infrastructure and retain the flexibility to modify, customize, and in most cases choose when they want to change the code. All customers can use different versions of the software.
  3. Multi-tenant - (a.k.a. "True SaaS"). Apps in a multi-tenant deployments provide a single operating environment shared by multiple customers. Config files are created and deployed each time a customer request services. Customers don't worry about the IT infrastructure and retain the flexibility to modify, configure but NOT customize the code. Customers usually receive upgrades at the same time. Everyone shares the same code.

From least expensive to most expensive to run for a vendor:

  1. True SaaS
  2. Server Virtualization
  3. On Demand

Why is this important? Let's see, you choose an OnDemand solution and the vendor's costs to run the app goes up with each new customer as it has to manage the different environments. No matter how hard the vendor will try to "fit" everyone to standard configurations and deployments, that's not always possible. Flexibility has a cost. In a "True Saas" solution, the cost to add an additional customer is minimal and each customer reduces the overall cost for everyone. Ultimately, a True SaaS deployment will have the lowest cost/user/month fee. What will you do 5 years into an OnDemand scenario when you are locked in?

From most customizable to least customizable for a customer:

  1. On Demand
  2. Server Virtualization
  3. True SaaS

Why is this important? Your may have specific needs in an area where the SaaS vendor has not provided the deepest level of configurations. You can't just go in and modify the code unless everyone else wants it or the vendor's has it on the roadmap. The cost of comformity is the lack of flexibility. What will you do 5 years into a True SaaS scenario when you are locked in and the vendor won't add the feature or functionality you need?

The bottom line:
Keep in mind there are cases where one deployment option is more favorable than another. Just because you are multi-tenant SaaS doesn't mean you are better. On the other hand, when vendors tout OnDemand as a SaaS offering, then the SaaS bigotry begins. Be on the look out as more vendor provide mix-mode offerings to support disconnected modes, SaaS and On-premise, as well as other improvements in integration with stronger client side ESB's.

....

Editorial Note: (September 5th, 2007) Just noticed a great posting that really showcases the point here. This applies to all the vendors who did not architect for SaaS and are now playing catch up.

Phil Wainewright's Posting on Oracle's Misconceived SaaS Strategy

(The personal contents in this blog do not reflect the opinions, ideas, thoughts, points of view, and any other potential attribution of my current, past, or future employers.)
Copyrighted 2007 by R Wang. All rights reserved