What’s the long term cost of not using a PaaS?


If you’re an ISV considering SaaS as a delivery model (whether it’s for a new product or migrating an existing one), you’re going to inevitably bump into SaaS platforms as a potential means of building your service. Once you do, you’re presented with two options: (1) build a fully integrated SaaS offering yourself which includes your actual offering (say, an HR solution) and the underlying SaaS mechanics (relevant SaaS delivery components like multi-tenancy, onboarding and provisioning, high availability architecture, web services API, etc.) or (2) build your actual offering (the same HR solution) atop a purpose built platform as a service (PaaS) offering that does the SaaS heavy lifting in your architecture. When faced with these two options, the astute decision maker will inevitably ask:

“Well, a PaaS seems to save us a ton of upfront effort and cost. In fact, it might cut our costs down from $600,000 and 14 months to $200,000 and 4 months. However, if we go with a PaaS, we’ll have an ever present operational expense that never goes away. If we go with option 1 and just bite the bullet, sure we’ll spend the money and time upfront, but that’s just a one-time investment. Won’t we experience ROI on that 10 months and $400,000 rather quickly?”

My answer is an emphatic no! Now, don’t take the platform guy’s (me) word for it: let me put some substance behind my claim. To understand why I say no, let’s really understand the question. Starting from the top and irrespective of the aforementioned question, an ISV is deciding to deliver software functionality to the web. That functionality is valuable to their customer base. The better the ISV is at their core competency of capturing value for their customer, the better off the customer is and the more likely the business is to succeed. If you’re building an HR app, every minute and dime your company invests in HR functionality could yield added value for your customer and higher revenue for you.  At no point does this suggest that somehow the delivery model is the core value offering to your customer, or that your competency is in constructing a delivery model. In fact, it’s a distraction to the primary goal. Now, going with option 1 with a notion that we have to “Build it here because it’s a one-time investment and we’ll make a return” assumes that it is in fact, a one-time investment. This couldn’t be farther from the truth. Realistically, you’ve in fact decided to take on the burden of whole product line and its lifespan. I’ve constructed a conceptual diagram to capture the rough notion of relative cost between your actual offering (an HR app), the “home built” SaaS delivery model stack, and opportunity cost (all of which I’ll discuss)

At the start of your SaaS journey, option 1 means that a huge chunk of your development time and money (40% - 70%) will be focused on solving SaaS delivery model problems and not on the value proposition you plan on delivering to customers. This is what accounts for the added 10 months and $400,000 in our initial scenario. Now, if the buck stopped there, our decision maker might be right: ROI is right around the corner. Realistically, you’ve made a first attempt at building a SaaS delivery model and have rolled out a very immature SaaS support stack. Once you launch your product, you’ll start your first maintenance and “new feature” phase of your offering. During this period, you’ll find that the most bugs and changes are coming from deep SaaS architecture problems and change requests. Your time will most likely be diverted away from product change requests (read: innovation) by SaaS stack repair. If you’re successful, you hit some “scale event” and feel a massive “cost pinch” and risk point. The scale problems in this case are most likely a result of poor assumptions in the SaaS stack, or the coupling of your actual application to the underlying delivery model machine. This cycle of maintenance effort and scale events will likely happen a couple of more times, and a couple of years down the road, with thousands of man hours and lots of money spent on the SaaS stack, you’ll reach a point where the stack effort starts to decrease, giving you some breathing room. At that point, you’re done battling fires with the fits and starts of big problems and maintenance phases, but opportunity cost ambiguity kicks in; are you going to exert effort on your core product or boost value in the delivery stack? Odds are you’ll forgo improving the stack (despite the massive value it can inject in your business) in favor of responding to customer demand on domain functionality need in your nifty HR app (since you’ve been distracted by the SaaS stack for so long). Those opportunity costs mount, and potential added revenue or savings opportunities disappear. Think of simple examples like giving your customers the ability to download data backups: is that an application specific problem or a “horizontal” problem for which a stack should be responsible? Do you want to waste effort on this or would it have been wiser to build on a PaaS that either has this functionality or that would introduce it faster than you would? I guess it wasn’t a one-time investment after all! In fact, it seems to be a massive ongoing investment with little predictability or bounds. This discussion hasn’t even touched on the maturity concept (for example, a “home built” SaaS stack will bump into security problems, bugs, etc. that get resolved in PaaS offerings much quicker because of the speed at which they scale due to aggregation, and the fact that PaaS providers focus solely on solving these problems).

When looking at a PaaS offering like SaaSGrid, you need to understand that paying a utility fee gives you a fully maintained delivery model without the ongoing headaches; one that will evolve much faster than you can imagine, constantly adding value to the guest applications that depend on it. If this isn’t enough, history has shown us great analogies. For example, why don’t people write application servers each and every time they write an on-premises web app? Because it doesn’t make fiscal or logical sense! You just download JBoss or buy WebSphere and go about your business! It’s very difficult to argue that a “home built” stack would be more powerful, less costly, and more able to keep up with market change.

What’s your opinion on PaaS vs. building it all yourself? Does the application server analogy resonate well with you? I’m interested in your feedback!

If you’d like to mingle with others in the SaaS space, the SaaSBlogs group on LinkedIn now has 1775+ members and is growing every day; make sure you’ re not missing out and join today!

 

Information and Links

Join the fray by commenting, tracking what others have to say, or linking to it from your blog.


Other Posts
Is multi-tenancy more important than just cost savings?
Webinar Recording and Q&A Now Available - Sink or Swim: Transitioning your Software Business to SaaS



Write a Comment

Take a moment to comment and tell us what you think. Some basic HTML is allowed for formatting.

Reader Comments

It makes sense for any startup, small or mid size companies to go with what you are recommending because it will give them more time to attend to the needs of their customers. But again some of the disadvantages are:
1. Dependency on the PaaS environment - Companies have to choose a mature and right PasS provider
2. Changing business model - Immature players frequently change their business model and this can affect the companies using the PaaS.
3. If the PaaS provider is not doing well then soon there will be problems in scalability.
Unless, a company chooses mature PaaS company, there is always risk on the companies using the PaaS service.

Anand, thanks for the comments. While correct, most of your “disadvantages” really just point to the maturity of the platform and not some sort of set of disadvantages of PaaS. Second, a majority of these issues can be worked around. For example, “dependency on a PaaS environment” because of associated risk can be significantly mitigated via a strong disaster recovery plan provided to software companies by the PaaS provider. This plan would include a good “if we cease to exist” scenario.

As for number 3 in your list, that’s not necessarily true. Mature or not, that’s simply a technology question. A software company should do their dilligence and request scale tests, white papers, etc.

Sinclair, thanks for the clarifications. It becomes very important for any company to choose the right Paas provider.

I read complete blog post and the comments too, and found that PaaS can’t stand alone with just its provider. The Dependencies are growing day by day, may it be vendor lock-in, data lock-in, maturity of the PaaS or may be standarization.

IaaS, PaaS and SaaS are the key players involved in building a real cloud Computing World. Some consider that companies involved in PaaS or SaaS services are wrapping their product around the cloud and putting it forward as a cloud computing network.

Currently PaaS and SaaS providers are not actually following the SOA process of implementing cloud computing.

But the major loop hole being talked about Cloud computing and PaaS are the security of Data and Migration of platform from one vendor to another. This is only possible if a authorised community for standardization will come forward from the cloud players themselves, just like W3C. Some of the PaaS providers(Amazon, Google, Wolf Frameworks, etc.) are working hard on the security part of the customer data hanging in the cloud, which is of much concern at the budding age of Cloud Computing. At the same time, others(Wolf Frameworks and Team Desk) are working on a standard oriented architecture and applications, which means customer will not be bound to a particular vendor, if not happy with the services, they can just take a backup of the design structure of their application and move to better PaaS providers, so no vendor lock-in. Similarly, people are also talking about private clouds within the public cloud architecture (which in one sense disturbs the SOA concept but also helps in security of Customer Data.). Thus such kind of SOA-PaaS hybrid model which is uniquely related to Services is going to solve the data lock-in issues too. SOA/Cloud gives customers all kind of freedom.