Updating software, adding new functions, fixing bugs and solving problems. Technology vendors often sell a maintenance contract with their software. This contract is usually calculated as an annual fee based on some percentage of the total software cost. It generally provides for overall support and maintenance of a software product, including applications. Support may include telephone assistance time as well.