A guide for:
- IT managers buying Software
- Developers selling Software


Software Contracts . Net

A guide to Software licenses, and IT contracts

Software Contracts . NET
Software Contracts . NET

Software Contracts . NET
Software Contracts . NET
by Wei-lung Wang
  Topic Index
    01   Common Types of IT Contracts
License Agreements, Services contracts, Supply contracts, Custom contracts
    02   How companies buy software, solutions and services
Purchase Orders, RFIs, RFPs, RFQs, and contracts
    03   Types of Software
COTS, Open Source off the shelf, Turnkey projects
    04   Contracts at each stage of the Software Life Cycle
Important legal issues at each stage, for both developers and buyers.
    05   Intellectual Property Rights in Software
Licenses, Copyrights, Patents, and Ownership.
    06   Commercial Software Licenses
Off-the-shelf software, custom developed software, and OEM software licenses
    07   Open Source Software Licenses
Apache, GPL, LGPL, Others
    08   Software Warranties
Warranty Service, Service Levels, Remedial Support, Updates
    09   Software Maintenance Contracts
How they are different from software warranties
    10   Software Support Contracts
help desk, onsite / remote support
    11   Managed Services Contracts
operations activities, single contact point
    12   Software Development Contracts / Systems Integration Contracts
How these complex contracts are structured, and why they are complicatied
    13   Tips when buying Systems Integration / Software Development contracts
Tips for success, and pitfalls to avoid
    14   Typical Contract Terms
Terms that appear in most contracts
    15   Glossary
Legal and software terminology explained
  Software Warranties

When a vendor sells a product, there is usually an implied promise that a product will do something. For example, a light bulb will produce light, and a car can be driven around. This promise is made either informally, for example through product brochures, or formally as a set of published technical specifications. Under the law, when you buy the product, you can reasonably expect that the product will perform as promised.

A warranty is simply (1) a formal promise by a vendor that the product is defect free, meaning that it will do what it promises to do, and that if it fails to do so, (2) how the vendor will go about rectifying defects.

If you buy server or computer hardware, a warranty typically guarantees that the product will (a) perform according to its technical specifications, (b) that it is free from manufacturing defects. The warranty agreement will say how the company will fix a product, and how quickly it will do so, if the product doesn't meet its promises. This is usually phrased as "Warranty Service" with an associated "Service Level". For example, the vendor may say that they will exchange parts on a 1-for-1 basis, and that it guarantees that this will be done within 48 hours. The warranty will also say what it does not cover, or what can cause the warranty to be void. For example, unauthorized modifications to the machine may void your warranty. From a legal standpoint, a warranty may also include clauses that limit a vendor's liability in the event that a product fails. For example, if a server fails, you may not be able to sue the vendor for damages arising from a loss of data caused by the server failure.

When you buy software, the situation is a little different. Unlike hardware, software is sometimes sold on an unwarranted "as-is" basis. This means that the vendor does not guarantee that the software will work as promised. In other words, there is effectively no warranty for the software. (Sometimes there is a warranty for the software media, but not the software itself. You may be able to return the media if it is damaged.) Commercial off-the-shelf software, also known as shrink-wrap software, is often sold on an "as-is" basis.

Enterprise or custom-built software on the other hand, tends to be sold with a limited warranty. But these software warranties are often limited warranties, because vendors do not guarantee that the program will work flawlessly and exactly according to specifications. The reason for this is that it is almost impossible to produce defect (bug) free software. Although they don't guarantee that the software will work as promised, they usually provide for one or more of the following remedies to address software defects:

1. Problem Reporting Channel. The vendor will provide the customer with a telephone number or some other mechanism to report problems. These channels only take problem reports, and are usually not able to rectify the problem or offer other support.

2. Maintenance Updates. Some warranties specify that the vendor may produce fixes and patches to remedy any defects in the software, but they rarely guarantee that these fixes/patches will be produced, or that they will be produced within a certain period from the time the defect was discovered. In other words, it means that they will produce patches/fixes at their discretion, on a best-effort basis. These patches may also include minor enhancements that improve the performance of the software, or keep it current with operating systems and other software. It is expected that customers will carry out patching and installing updates, and the vendor usually does not provide services to install or manage the updates that they have released.

3. Recourse to a refund. This states that during the period of the warranty, the customer is entitled to return the software for a full refund if the software fails to perform according to specifications, and the vendor is unable to release a maintenance update to rectify it.

4. Recourse to remedial support. This means that if the software fails to perform according to specifications, the vendor will provide support to help the customer bring the software back up to operational mode, either through a emergency software fix or through some bypass procedures. The type of remedial support provided typically depends on the Severity Level of the problem. This support can be provided remotely or on-site, and may be available 24x7 or only during business hours, depending on the agreement.

5. Eligibility to contract the vendor for change requests (only for custom software). Meant to keep the software relevant to the business. Changes are generally warranted separately, and also priced separately.

6. Helpdesk support. Sometimes, helpdesk support is bundled in. Helpdesk support provides assistance to help users configure and use their software.


Copyright © 2008
Wei-lung Wang
All rights reserved.