Wednesday, August 29, 2007

Seven Steps to successful user adoption of your Software as a Service Solution

We've been busy provisioning a whole bunch of new customers in my role at Forcelogix.
Only now have I had time to sit back and look at what we have done in the last few years to get to where we are.

Forcelogix is not my first "foray" into Software as a Service Solutions, but when we started up Forcelogix, it was at a time where Salesforce.com was truly setting (and still is) the benchmark in this space. As such, customer expectations and knowledge were far greater than my last foray into On Demand services.

As we have been acquiring new customers, it has been a learning curve for us as an organization. We have our own Product roadmap of course but in implementing our product for these new customers it has "encouraged" us to fasttrack some of the items on this roadmap. Without successfully doing so, we would not have closed the deals that we have now and we would not have retained the customers we already have. A successful ongoing SAAS business is all about Monthly Recurring Revenue and without successful user adoption you will fail miserably in this area.

As such I decided to write up here and provide to you the list of "Must Haves" you will need to implement if you are looking at starting up a successful Software as a Service Company. Hopefully this will be useful to some of you out there.

1. Agile Development Methodology.
Your Dev Team must adopt an Agile Development Approach to delivering product.
Software as a Service Development is all about low cost, high quality and speed of delivery.
You cannot afford to adopt a bloated and slow approach to delivering features.
Users will identify features and issues that will become showstoppers unless you can resolve quickly.
The ability to deliver new features quickly will also help retain user interest in your product.

2. Dynamic Localization.
If you have any hope at all of selling your product to Multi-National Companies, you need to provide a web based mechanism for your customer to localize to their language and culture. Localization cannot be the traditional Development function. Each customer and country has their own terminology and set of idiomatic expressions. For successful user adoption of your product, you need to be able to let the customer decide how to translate your product.

3. Offline (Occasionally Connected) Module.
Without an offline module, you will not get far in the B2B On Demand Space.
Users will always want to have the option of using your product without an Internet connection.

4. Reliability.
Not much needs to be said about this. If users cannot access your system they will stop using it. Just make sure you have plenty of redundancy in your data center, and detailed recovery plans which have been tested.

5. Ease of Use and User Experience.
Users have very little patience, and if they are required to read a "book" on how to you use your product and attend 3 day training courses you will not have good user adoption. A 2-3 hour Web conference should be sufficient. User Experience goes hand in hand with this. A non intuitive application is doomed to failure. A simple UI along with good performance will go a long way in building up user adoption. AJAX can help with the "perception" of speed in your application.

6. Measure.
Provide a convenient way for the "Client" Administrator to monitor usage.
Implement a usage report in the "Admin" view of your product. You need to identify patterns of low usage and act on them quickly. You may see such things as lack of communication, "incorrect data" are the cause of some users not using the product.

7. Communication
Communicate regularly with your key contacts. Make sure you are always up to date on customer perception and what is happening in the customer organization. Personnel Changes, IT Policy changes, Business process change can all impact user adoption and you need to spot these early.


I hope you find this useful.