A unique aspect of SaaS development that is difficult to get into people's minds during a sales process is the usefulness of building on top of a refined platform.
Most enterprise SaaS apps need customization.  I was recently in a sales situation where I was competing against a ground up development shop.  I assume they were very good at what they did. 
When the prospective client asked me why he should go with a SaaS based mash-up rather than a ground up development I was in the embarrassing position of admitting that all software development is pretty bad out of the gate.  That no matter what, you are going to start off in rev. 1 and 2 with lots of bugs that are either in the requirements or the implementation. 
In my 25 years in the industry, I have seen little progress in this area.  All software has bugs but new software has lots of bugs.  That's why cobbling together different mature SaaS platforms makes a lot of sense. 
Our strategy is to take one or more existing SaaS platforms or services and limit the customizations to our own SaaS servers that have the effect of bringing the platforms and services together in an integrated and unified end-user application.
Yes, this means we write new code and yes, it has bugs in it in rev 1 and 2.  Most often these are requirement bugs.  The client didn't know what they didn't know and need to make post launch revisions.  To be fair, there are also implementation bugs.  By doing everything we can to reduce the new lines of code created, we end up reducing these implementation bugs dramatically.
We build upon the past and still support an entirely SaaS model.  That's why we think this will be the model of the future and I hope I will never have to do any ground up development again.
Tuesday, November 3, 2009
Subscribe to:
Comments (Atom)

 
