Why change what works
You upgraded a client’s database to a shiny new SQL server and gave them a superior software product with a sleek modern UI. And yet, you get a call next morning with the client yelling at you to revert back to their old DB3 with DOS-based interface threatening to leave you for your competitor. You reluctantly give in and put them back on the old product. The upgrade is a disaster.
A major software upgrade across the client base is something that most companies eventually have to deal with sooner or later. Handled correctly, new versions of software generally result in streamlined and easier to support products which give greater value to their users. The trick is to make the customer recognize that fact and get their buy-in.
Many conversion and upgrade software and hardware projects could fail even despite the flawless technical execution. Why is that? During the upgrade and conversion process, the people aspect is often overlooked. People are generally resistant to change. So are your clients. If not handled correctly, major changes such as introducing new major versions of business-critical software products could trigger these major resistances and refusals to adopt the new technology.
Techniques described below helped me overcome these resistances and successfully complete a multi-year software conversion project which upgraded business-critical pharmanet software at over 300 hospitals, pharmacies, and medical supply stores.
Early adopters first
Chances are, some of your clients are more technically savvy than others and anticipate getting their hands on your new product as soon as possible. In the beginning, when the upgrade process is still immature, upgrade those clients first. Early adopters will be more willing to learn new software and might be more forgiving of your technical mistakes, such as errors in converting their data to new database.
Offering those clients certain incentives, such as temporarily reducing their monthly fees would compensate for their time should any difficulties occur. Other incentives could include involving those clients in the development process while iterating new releases or giving them extra software features free of charge. In any case, maintaining long-term excellent relationships with your clients is much more important than short-term financial gain.
If you have good relationship with your customers, they might even help cheerleading your new product among their industry connections. Many times during the upgrade project, I have been asked to give contact information for clients who already use the software. Treat early adopters well, and they will be your biggest allies.
Feedback and continuous improvement
Without customer perspective, some subtle aspects of software upgrade will be overlooked, which could negatively affect customer experience. For example, you might not think taking a client system down for an hour during business hours is a big deal, but if they cannot run their business without the software, that hour could result in enormous headaches and a permanent loss of some business for your client. Just think about a pharmacy needing to perform dangerous drug interactions check during a prescription fill when their system is down. Many patients will not wait and might permanently leave to get their prescription fills elsewhere. Thus, to minimize disruptions, the software upgrade might have to be scheduled outside the business hours.
Survey each customer at the end of the conversion process and see what could be improved. Continuously introduce the best suggestions into your upgrade process. The last customers you convert will also be the ones who are most resistant, and you will want to have the process optimized by that point to give yourself the best chance to succeed.
While providing training on a new system could be somewhat time consuming and costly, I find that the long-term benefits outweigh the short-term costs. In some cases, one hour of quality training prior to upgrade could save up to five hours of support calls afterwards. For instance, an untrained or poorly trained client who has difficulty adapting to new software might keep calling each time they encounter a new or modified software feature, thus greatly and unnecessarily increasing the amount of back-and-forth communication. More importantly, an untrained customer might grow frustrated with the software due to unfamiliarity with the system, and become less loyal. Planning a training session prior to the conversion with a follow up Q&A would prevent many of the consequent support calls, and eliminate the primary cause of clients’ frustrations.
Technical staff involvement
Quite often, your new software system requires a certain network and hardware configurations which you might not be able to do without your customer organization’s technical staff. These people are crucial to any kind of software or hardware upgrade, and a software project would fail without their buy in. Involving, training, and coaching technical staff would increase chances of successful upgrade. In fact, some of my biggest successes and failures came from dealing with technical staff during software upgrade projects. Below are several pointers I developed which help me effectively work with various technicians:
Organization and early involvement - find out what kind of information technicians need from you. If software upgrade requires specific network and hardware configurations, organize your requirements and communicate those clearly and well in advance of conversion date to give ample time for technicians to perform their work. Also, do not hesitate to suggest and negotiate timelines for deliverables, such as having new computers in place.
Clear division of responsibilities - be very clear what exact services you are going to provide during the upgrade process and outline other party’s responsibilities. Do not be a hero and configure the hardware yourself when you are only supposed to be installing the software: while this action definitely goes as an extra mile for the customer, it also builds unrealistic expectations as you will be held responsible for any future work relating to that hardware configuration. Just leave it to hardware professionals.
Rewards and incentives - in some cases, the software upgrade could involve hardware upgrade as well. If an organization converting to new software is hiring outside hardware or network professionals, chances are those technicians would appreciate your endorsement of their work. Reward technicians’ good work by letting your customer know and recommending them to your other clients who are in need of hardware or network services. Over time, you will build a network of “go to” people who you could rely on.
Coaching - by making myself available to technicians, I was able to develop several effective relationships. Face-to-face meetings are the best, since I find people tend to trust each other more after seeing each other in person. Sit down for coffee and discuss expectations of each other and the above points among other things. Show them your new system and explain the benefits for your mutual client. Emphasize that the success of the software upgrade is also theirs, as well-maintained hardware and network would also increase software performance.
Even if your users are well-trained, and conversion goes smoothly, you might still get upset customers who simply ‘like’ their old system better. Those cases simply require patience and listening skills. Find out what specifically your client is upset about. Emphasize the improved features of the new software. Ask how they think your product could be improved in the future and write up some user stories. In the end, your client should understand that they are getting greater value from your new product than the old one.