Software Development Agreements -- Just Hold Your Nose and Write One
One of the most important functions of a software development agreement is to establish who will own the intellectual property rights to the software to be created. This is often one of the most hotly contested issues between the developer and customer, and can easily break a deal.
There are many ownership options available, ranging from sole ownership by the customer to ownership by the developer with the customer merely having a license to use the software. And there are many alternatives between these two extremes. Depending on the amount of money the developer is paid, any of these options can be satisfactory.
The Developer's Background Technology
A software developer will normally have various development tools, routines, subroutines and other programs, data, and materials that he or she brings to the job and that might end up in the final product -- for example, code used for window manipulation, displaying menus, data storing, and printing. One term for these items is "background technology."
If the developer transfers ownership of the software to the customer, the customer may end up owning this background technology as well. A developer is usually well advised to avoid this by making sure the development agreement provides that he or she retains all ownership rights in this material. But, in this event, the agreement should give the customer a nonexclusive license to use the background technology that the developer includes in the software delivered to the customer.
Promises to Keep -- Warranty Provisions
We all are somewhat familiar with warranties. Whenever we buy an expensive product -- a car, television, or computer -- the seller normally warrants or promises that the product will do what it is supposed to do for a specific or reasonable time period, and that the seller will fix or replace it if it does not.
Custom software developers are naturally hesitant about giving a warranty for something that is not yet in existence when the warranty is made. However, no customer in its right mind would agree to pay a large sum for custom software without some assurance that the product will work. Warranty provisions are included in most custom software development contracts. However, because this is an area of active bargaining between the developer and customer, they vary widely.
One of the most important warranties typically found in software development contracts is a warranty of software performance. This means the developer promises that the software will work the way the developer said it would and will fix it free of charge if it doesn't. Such warranties typically last from 90 days to one year after the software is delivered. Other important warranties include warranties of title (that the customer will get good title to the software) and of noninfringement (that the software will not infringe on anyone's copyright, trade secret, patent, or other intellectual property rights).
Testing, What Testing? Don't You Trust Me?
Testing is one of the most important phases of the software development process. The purpose of testing is to determine whether the software does what it is supposed to do and is reliable. Particularly where safety is involved -- for example, software implemented in a "911" service or designed to run an elevator -- the software should be tested as thoroughly as possible.
Of course, the developer should test the software before it delivers it to the customer, but the customer should not rely solely on such testing. Before it accepts and pays for the software, the customer should:
- Test the software itself, assuming it has personnel qualified to do so
- Have the developer test the software under the customer's supervision on the customer's hardware at its place of business
- Have the software tested by an independent testing lab
Can't We Resolve This like Gentlepeople?
The single most important provision in any development contract is often the procedure for resolving disputes. If a problem develops and the other side turns out to make unreasonable demands, resorting to court litigation can be ruinously expensive.
Arbitration and mediation are two means of settling disputes without going to court. In arbitration, a person or panel decides the merits of the issues and renders a decision, which may or not be binding, depending on the arbitration agreement. There are a number of professional arbitrators' organizations -- notably the American Arbitration Association, which has offices in most major cities.
Mediation is less formal and even cheaper than arbitration, and by its nature is never binding. Typically, the mediator either sits the parties down together and tries to provide an objective view of their dispute, or shuttles between the two sides as a cool conduit of what may be red-hot opinions. Where the real problem is a personality conflict or simple lack of communication, a good mediator can keep a minor controversy from shattering the relationship between software developer and customer. Where the argument is more serious, a mediator may be able to lead to a mutually satisfactory resolution that will obviate time-consuming and expensive litigation.
No one can be forced into arbitration or mediation; one must agree to it, either in the contract or later when a dispute arises. Commercial contracts today frequently include a binding arbitration provision. However, this is not a matter to be agreed to lightly. By agreeing to binding arbitration, you're basically giving up your right to go to court to enforce the contract.
Copyright © 2000 Nolo.com Inc.
ADVERTISEMENT
FROM OUR PARTNERS
ADVERTISEMENT
Select Services
- Try Microsoft Office 365, free
- Try Microsoft Office 365: access, edit, and share docs in the cloud
- Get on the same page
- Show and tell by sharing your screen instantly at join.me. Free.
- Office 365 Live Demo
- Join Microsoft Office 365 specialists for a live online demo and Q&A.
- Hiscox Liability Insurance Quotes
- Customized coverage from $22.50/mo. Fast, free quotes online.
- The Mercedes-Benz Sprinter
- Grow your business with the commercial van that works as hard as you do
- Wells Fargo Business
- Our solutions and services can help you strengthen your business
- Reach more customers
- AT&T Advertising can help your business grow. Get started today.
- Be found
- With AT&T Advertising Solutions, it’s easier to find and be found.
- We knows your business
- Get a custom-tailored plan for your small business with AT&T Advertising Solutions.
- Social Campaigns
- Turn fans into customers with Social Campaigns from Constant Contact.





