What is a support contract?
A support contract is a legally binding document detailing specifically who (client or developer) is responsible for supporting which parts of the application upon completion. This can include services, hardware, software, and equipment, as well as maintenance, new application feature development, and security. Support contracts are necessary to communicate expectations from one party to the other, and are an important part in maintaining a healthy client-developer relationship, and having a successful project. Depending on the type of project, the size of your company, and any technology support infrastructure you may already have in place, the breadth of your support contract will vary.
The following questions serve to start a conversation between your company and your developer about what type of support contract, if any, is necessary for your next project.
If an issue arises with your application, can you afford downtime until someone (3rd-party) can come fix it?
If no support contract is in place and your application breaks in some capacity, the immediacy that you need the application to be back up and running can determine whether or not a support contract is necessary. If you have time to make and wait for an appointment with an independent contractor to come fix it (where availability can range in time frame from days to weeks) then a support contract might not be necessary, but if you require an immediate response, a legally binding, specific support contract will require your application to be serviced immediately. Smaller firms where the web application that was developed is used sporadically and not for day-to-day business would probably demand a less-intensive support contract (or maybe none at all) than an organization who relies entirely on their custom web application and cannot afford it to go down for any period of time.
Do you need to keep up with the latest software and security? Will your application require routine maintenance?
If you foresee the need for intense upkeep, new feature development, or continue improvements to be made on your application, a support contract would be advisable. Also, your firm's specific industry can determine whether or not a support contract is necessary: high-competition industry firms requiring the latest software and frequent maintenance would be better suited to having a support contract that lists out their requirements and expectations, as well as specific time-frames between feature updates, while firms in less-competitive (or less software-dependent) industries may be fine without any sort of formal support contract in place.
Would you rather pay someone else to do it, or have your in-house administrator provide coverage?
Depending on the existing IT infrastructure at your firm, a support contract may or may not be necessary. If your company has a dedicated IT manager and/or computer systems administrator, you may not need a support contract specifically laying out when and in what capacity the developer will provide troubleshooting and support. On the other hand, if your company doesn't have a dedicated position regarding your application, or you would prefer to employ the same people who helped design/migrate your bespoke application should you run into any troubles, a support contract is probably right for you.
Is the application you are supporting used by clients or just used internally?
If your company has contractual agreements with its own clients that ensures specific levels of service, amounts of application coverage, or specific application qualifications, a support contract might be advisable. To confidently agree to these terms, it can be an important safety measure to have a support contract with your developer in place if you have any doubts whatsoever about your own company providing the requisite support. It then becomes the developer's legal responsibility to meet these accepted support requirements, and it allows your company to focus on your client's other needs.
Depending on your answers to the above questions, you may or may not need a support contract for your next web application. That being said, it is better to be safe than sorry, so we strongly suggest you talk to your developer about a support contract, both before the project begins, and as the project is in development. Different changes may arise which need to be reflected in your support contract, so communication between you and your developer is key to ensuring everyone involved is pleased with the entire process.