If you are launching a web application then the question to deliver it as a SaaS or On-Premise web application is obvious to come up.
With many companies preferring pay-per-use or subscription models, it is impossible to ignore the SaaS delivery model. But there is more to it than just that.
Delivering your web application as a SaaS application is not ideal for every business nor is On-Premise a better option in every case.
So which delivery model should you choose?
Let me try to answer that question.
What is SaaS Application?
Gartner, an information technology research company, defines SaaS as:
Software that is owned, delivered and managed remotely by one or more providers. The provider delivers software based on one set of common code and data definitions that is consumed in a one-to-many model by all contracted customers at any time on a pay-for-use basis or as a subscription based on use metrics.
Simply put, SaaS is nothing but an application that is leased from someone else, usually the creator of the application. It is maintained and hosted by the creator, usually in the cloud. So, businesses do not have to worry about spending money to maintain all the hardware, software and employees required to maintain the application. Usually, businesses will pay the creator of the application a monthly fee for using the application.
What is On-Premise Application?
An On-Premise application is something that businesses will install on their own servers and maintain it.
The costs of maintaining the application, hardware, employees etc. are borne by the businesses. They do not pay any monthly fees but might still have to pay something to the creator of the application for getting support and updates for the application.
Which Delivery Model Should You Choose?
If you are working on developing a web application for a specific client then your choices might just be limited to whatever the client demands.
However, if you are developing a web application that you plan to sell to multiple customers then you should definitely evaluate the pros and cons of SaaS and On-Premise application delivery models.
There are four things that you need to look at before deciding the delivery model:
- The Market
- Application Needs
- Sales Strategy
- The Design
Independent technology and market research company Forrester Research has noted that the adoption of SaaS applications has been largely concentrated in the areas of Customer Relationship Management (CRM), Human Resource Management (HRM), Procurement, Collaboration and Productivity.
This however is rapidly changing. Other domains like Manufacturing, Finance, Business Intelligence etc. are also adopting SaaS applications.
If your web application serves a market that still does not have a prevalent SaaS adoption then you might have to think of offering your application as an On-Premise application.
The other thing that you might want to look at is the number of Startups versus established big Enterprises in your market.
Startups usually tend to be open in adoption of SaaS applications than bigger Enterprises. The primary reason behind their inclination towards SaaS seems to stem from the fact that SaaS applications have almost zero setup and maintenance costs. However, there are many other factors that are considered before finalizing on adoption of a SaaS application.
Enterprises on the other hand have been slow in moving to a SaaS model though this is changing off late. Primary reason seems to come from the insecurity of having all the important business data in the cloud instead of on their own servers behind secured firewalls and complex needs of integrating the SaaS application to legacy applications.
Both of these points are worth keeping in mind while deciding on your application’s delivery model.
Integrations: Will your customer need to integrate your application to other SaaS or legacy on-premise applications? This is common in industries like manufacturing where large ERP (Enterprise Resource Planning) applications run on-premise connecting various departments of the organization.
Customizations: Will your customer want to do customizations in your application? I am talking about code customizations that change certain behavior of the application, not small ones like changing the Skin, Logo etc. in the application. Customizations are quite common requirements for large Enterprises who have complex business flows to model in the application.
Security: Will your customers be worried about handing over their sensitive data to a SaaS vendor? That is you. This is common when you are dealing with financial data, design data, competitive data etc. No matter how tight the security of your SaaS application is, there will always be concerns.
Compliance: Are there any regulatory requirements that your customer has to be compliant with? There can be industry specific compliances like HIPAA, FINRA, SOX etc. that you as a SaaS vendor would have to comply with. Security compliance will have high impact on SaaS vendors because they are responsible to secure the system and the data. This has a lesser impact for On-Premise application vendors because the customer buying the application has the primary responsibility of securing the system and the data.
Once you have evaluated all of your application needs, you will be in a better position to decide which application model to offer to your customers, SaaS or On-Premise.
How are you planning to sell your web application to businesses? Do you plan to sell it on a monthly subscription basis? Or do you plan to sell it as a onetime cost?
SaaS applications are generally more suited for subscription sales while On-Premise applications are better suited for sales with onetime cost. Money can still be made for On-Premise applications by selling Support and Updates on a subscription basis.
The reason why you need to take sales strategy into consideration is that some markets are yet not at a stage to move to SaaS applications, like the Finance, Business Intelligence, Manufacturing etc. Though this is fast changing, you might still have to face lot of objections while trying to sell SaaS applications in such markets.
You don’t want to build an application only to find out that the market is not yet ready to adopt your sales model.
The design of certain features will need to be different for SaaS applications as against On-Premise applications.
Giving database level access to your customers so that they can upload all of their existing data in bulk using SQL might not be possible in all SaaS applications but the same thing can be achieved easily in On-Premise applications.
Also, designing a feature to let the users upload thousands of files as attachments will have to be different for SaaS web applications than On-premise web applications.
For SaaS applications you may have to create some kind of a front-end UI that the users can use to upload those thousands of files but the same thing can be easily achieved in On-Premise applications by uploading the files directly to the servers from backend.
Similarly, as you start designing your web application, you are bound to come across other features whose design will differ for SaaS applications versus On-Premise applications.
So What Did You Decide?
I know I am asking this question too soon.
But I hope you do realize that choosing the correct delivery model for your web application is important even before you start designing your web application.
Designing web applications is complex as it is and more so if you are designing web applications that are to be used by businesses to perform their day-to-day operations.
Designing business web applications for businesses is different from designing web applications that are to be used by general public. I hope you know that.
Interested in learning more?
Check out Step-by-Step Web App Design book. This book will teach you in great detail how to design web applications one step at a time.