Software Development Agreements
![]() |
| Fibre Optic Cables Author BigRiz Licence CC BY-SA 3.0 Source Wikimedia |
Jane Lambert
The key to a successful software development contract is a comprehensive and accurate technical specification that is agreed upon and understood by both the customer and the supplier. It is important not to confuse a technical specification with a functional specification. The functional specification will set out the functions and facilities that the software should have, but not state how it is to be developed. Those details will be contained in the technical specification. The customer should satisfy himself or herself that the technical specification implements the functional specification. If he or she lacks the skill and knowledge to do that, he or she may wish to appoint a consultant to help.
Acceptance Tests
As the bargain is that the supplier will deliver the specified software in return for a fee, a clause setting out the acceptance tests for determining whether the deliveries conform to the technical specification or other criteria is crucial. If the software passes those tests or otherwise satisfies the acceptance criteria, the supplier will usually be entitled to at least a portion of the fee. To resolve possible disputes as to whether the software satisfies the acceptance tests or other criteria, the parties may wish to provide for an expert to determine the issue.
Payment
Payment is often by instalments: the first payable upon signing of the agreement, the second upon compliance with the acceptance tests or other criteria, and the last upon implementation of the system. Interest is usually chargeable on late payment.
Licence
Suppliers will be reluctant to assign copyright in their work to their customers, even where they can do so. In many cases, it will not be possible because they will have used code that has been licensed to them by third parties. Instead, the supplier will tend to grant its customer a non-exclusive licence. The parties will often negotiate a contract for the support and maintenance of the delivered software. The supplier will often insist upon the deposit of the source code and other materials in escrow and require the regular updating of such deposits.
Change Control
Changes in the software may be necessary from time to time, but they can be expensive and have unforeseen repercussions. A well-drafted contract should provide a procedure for specifying a requested change and its consequences for the system as a whole, together with an estimate of the increased cost.
Termination
Breakdowns in relations between supplier and customer can occur for all sorts of reasons, and it is prudent to provide for them in the agreement. Disputes over changes to the software and the consequential costs and delays are one common reason. Another is where one of the parties experiences financial difficulty. Often, the least undesirable solution is to bring the contract to an end, relieve the parties from their future obligations under the agreement, release the software to another contractor where there is an escrow agreement and award some kind of remuneration to the supplier.
Other Clauses
Recitals are important because they facilitate the construction of the contract. The parties to the agreement should be identified, and their up-to-date contact details stated. A comprehensive definitions clause is also helpful. Sometimes, the performance of a contract is delayed by circumstances outside the parties' control. For that reason, I usually insert a force majeure clause. I also include a provision that the written instrument contains the full terms of the agreements and that any and all representations, warranties, collateral contracts not mentioned in the text are excluded. A clause cutting out any provision that may be unlawful or unenforceable, but preserving the rest of the agreement, should also be considered. The proper law of the contract should be stated. Provision should be made for the resolution of disputes between the parties. I usually provide for mediation and either arbitration or litigation in England and Wales.
Further Information
Anyone wishing to discuss this article may call me during UK office hours or send me a message through my contact form at any time.
Resources
Jane Lambert Computer Contracts 28 April 2026 NIPC Law

Comments