September 16, 2010

Transitioning from Software Development to Software Support

I had a regular “client update” call from a customer last week. The project for this customer is nearing completion and so we are starting to think about the transition from development to support. In this case, the concern was whether one person could properly support the work that four developers had been doing on four mobile platforms. Among the questions they asked me was what happens when we go from a team of engineers providing development resources to a staff of one providing support? This is a time when clients are anxious because they want to minimize the costs of managing the risk of problems with the application. Here are the questions we typically hear from clients about the transition and what we advise them.

What should support include? The main activities that support should cover are minor changes to the custom software application and changes that are caused by updates to the operating system.

What is the payment structure for support services? Keep the pricing model for support as simple as possible. Our clients prefer a per-hour fee structure because they only have to pay for the support they need.

Which person gets assigned to maintenance and support? Generally, the best person is one of the members of the development team. Preferably it will be the developer who has the broadest view of the work that was done or who is most knowledgeable about the areas that will need the most support.

What happens if we need support in an area outside this person’s experience or expertise? If you hire the developer to provide support, they will be familiar with the server interfaces and with the software operating environment. They have the process in place to develop and build the code and run it through tests with each change. They can also draw on their team’s capabilities when necessary to answer internal questions about how something works or what to do.

What if in the future we need more support than this, or even additional development? If you need it you can always ask your developer to ramp back up to a multi-person team to provide more depth. The important point is that your developer show flexibility by meeting all your support needs and by charging you only for the time they work for you.