Most of the discussion about SaaS in the enterprise talks about the consumption of SaaS applications by enterprise users. But there's another side of the coin, in which enterprises themselves deliver applications to their customers, partners or subsidiaries. Online banking, for example, which pretty much all of us use to manage our money these days, is a prima facie example of a highly sophisticated, single-instance multi-tenant application that banks deliver as-a-service to their customers. The SaaS industry owes a debt of gratitude to the banks for what they've done to create mainstream acceptance of online applications. More recently, banks have taken a lead in promoting the use of two-factor authentication for more secure logins, which SaaS vendors are slowly beginning to copy.
That's one example, but there are many others, ranging from social media portals in the B2C space to supply chain and partner applications in the B2B arena. In addition to these outward-facing use cases, there are others within a large organization, where applications can be delivered in a SaaS model either to employees or to subsidiaries and divisions.
While these private implementations may not face the same challenges of cloud scale as public implementations that are open to all, they still require a lot of the same skills and technologies that SaaS vendors make use of. Some enterprises may have the resources, budget and time to build what they need in-house from scratch, but the majority would rather shortcut the process. They're left with two choices: either use a provider's hosted infrastructure, or buy a platform that they can deploy themselves. Given the predisposition many enterprises have for private cloud solutions, it should come as no surprise that many are opting for the 'private SaaS' option, as vendors have started calling it.
I recently spoke to two vendors offering such solutions [and I should disclose that I'm working on a white paper about the topic with a third]. One was Corent Technology, whose platform is suitable for Java applications. The other was Apprenda, whose SaaSGrid platform is designed for .NET applications.
Both these platforms offer the ability to 'inject' multi-tenancy into an existing single-tenant application. It sounds like that didn't ought to work, and it does depend on how the app was written in the first place, but it's surprisingly effective, and certainly a huge advance on merely hosting an app on Amazon, Azure, or some other cloud infrastructure service.
Part of the reason why it works is that these vendors also provide infrastructure components — such as provisioning, entitlement management and usage monitoring — that provide the as-a-service capabilities that are crucial to a successful SaaS deployment. Corent has a useful article on the IBM DeveloperWorks site that digs down into some detail on how its platform works.
The enterprise market is now opening up to these vendors because, as Apprenda's CEO Sinclair Schuller explained to me recently, "There's no point in building the infrastructure from the ground up ... You're either going to take 18 months building those things or you're going to use us."
The vendor has encountered three principal use cases within an enterprise:
- Branch-based software for branch or franchise networks: "That's where the private saas model absoutely makes sense," Schuller added.
- Internal horizontal application delivery: "The ability to send out a URL and say, 'sign up'."
- External facing applications, for example a benefits management portal from a payroll provider, or customer support from a consumer goods manufacturer.
Of course, that third use case is one where SaaS vendors may well argue they do a better job already of hosting enterprises on their own application platforms. Why custom-build your own portal when you can have theirs off-the-shelf? It's a fair argument, but every industry has its OEM sector and it seems that SaaS is now developing one of its own.
Still, I would be letting my readers down if I didn't conclude by putting the case against 'private' SaaS and in favor of having the provider run the platform. I recently noticed this passionate defense of shared multi-tenancy from Heroku founder James Lindenbaum, and I've been aching for an opportunity to post it:
"We believe that all these services and cloud platforms, the value comes from us running it as a service for the customer. We don't think that packaging up our software and shipping it to somebody to run themselves delivers the value. We think a huge portion of the value is in us running it. Most other big tech companies that are in the PaaS [platform as a service] space don't believe that. They want to sell a boxed version because they see an opportunity in the short-term to sell a boxed version of a PaaS to big enterprises to use in their private cloud. Salesforce is an original platform-as-a-service company. They believe religiously that service is the only way to go. They are never going to sell software. We share that view with them and that was a really good point of philosophical convergence for us."