SaaSGrid: An Operating System for SaaS
Posted by Bob Warfield on December 3, 2008
Apprenda has announced that SaaSGrid has moved from closed Beta to public availability today. I had the pleasure of interviewing Sinclair Schuller, Apprenda’s CEO to learn more about SaaSGrid recently. It’s a fascinating offering, and I can definitely see how it makes it easier to create new SaaS applications.
Apprenda calls SaaSGrid a “Cloud Operating System.” I don’t know if I would call it that or not, but at the very least it is a SaaS platform that offers a lot of benefits not unlike Force.com from Salesforce, but with some key differences. First and foremost in my mind, is that there isn’t much of anything proprietary about SaaSGrid. It’s a framework that makes it easy for .NET developers to move their applications to a SaaS Cloud-based delivery vehicle. Looking at the services provided by the framework, it isn’t hard to see that Schuller & Co. have had experience building SaaS applications before (in fact quite a few of them), because it solves many of the SaaS-specific problems I’ve seen in my career as well.
SaaSGrid covers two bases. First, it offers plumbing and delivery infrastructure services. In my mind that’s the “Cloud Operating System” piece. But, at least as interesting is their Business Engine, that helps simplify a lot of the operational aspects of SaaS.
Let’s describe the OS piece first. Schuller says it is a “contextual execution environment.” Think of that as a way to virtualize the multitenant aspect of SaaS so that the application developers don’t need to worry about it much. It happens almost for free. This makes a lot of sense if you think about it. The app developer shouldn’t have to think about tenants any more than the tenants think about each other. What happens is the developer deploys a single instance and SaaSGrid figures out how to extend that for many tenants. In doing so it manages data isolation, execution isolation, tenant load balancing, scale out, and those sorts of problems.
Now what about the Business Engine (or Business Services as they refer to them)? I thought this part was really cool. Basically, the Business Services provide a metering and security framework that’s tied to monetization management. These are common problems for SaaS companies. We certainly had to solve them for my own company, Helpstream.
To use the framework involves tagging certain features so that they can be recognized as such for security and for offering different levels to different customers. For example a trial version, a basic version, and a professional version would be very straightforward. After you tag these features for SaaSGrid, it can then literally structure a web menu that tells what features go in each version, deal with billing, centralize logging, provision, and do the million and one other tasks that plague SaaS developers around these issues today.
Got a request from marketing to refactor which features go into which versions? No problem. Need to add a new high end version that costs more? No problem. This sort of thing is exactly what SaaSGrid is set up for.
The lifecycle to use SaaSGrid is pretty straightforward. Develop your .NET app as you’d expect. The web services and DB layers are SaaSGrid, while the UI layer is your choice. Bundle that lal up as a SaaSGrid archive, configure in SaaSGrid’s web application, publish it, and voila! You have a SaaS app ready to be managed via their portal. You get all kinds of nifty reports on billings, usage, and the like. The UI from the demo was clean and easy to understand. There is provision for lifecycle stages including Development, Test, Production, and Archived (old releases).
The process of migrating folks to new releases can be particularly problematic for SaaS (where everyone runs the same release), but SaaSGrid works with you there too. Later versions can either be patches with deltas, or completely new images. The patches do schema migration via scripts you provide. The last piece to be aware of is that SaaSGrid doesn’t own a data center (good call!). Rather, they partner with various organizations.
There’s a lot more to SaaSGrid, more than I can cover in a simple blog post, but it’s something to take a look at if you need help getting a SaaS application to market sooner. I queried Schuller about the availability of Unix (versus the current .NET) versions and he mentioned their software is all Open Source and Linux under the covers, so that won’t be hard. He just felt like the .NET community wasn’t getting enough attention yet in the Cloud. I wouldn’t be surprised to see unix versions of the platform at some future point if there is demand for it.