This article sets out some key legal considerations in relation to software development, focussing on the nature of the software solution and intellectual property rights, and how to address these issues in the software development agreement. It is written from the perspective of the software developer. Customers will of course have similar considerations from the other perspective.
As with any commercial arrangement, a written contract is important to document the intentions of the parties and manage commercial and legal risks and liabilities. The contract can change the default or implied position which would otherwise arise at law (for example on intellectual property ownership and associated liabilities).
A written contract does not just provide legal certainty, but can also assist with the commercial relationship; if both parties are clear on requirements and limitations up-front, this can avoid misunderstandings and disputes down the line.
It may seem obvious, but the contract should clearly describe what you are developing for the customer. This is central to the whole purpose of the agreement and to what the other terms relate, but is too often taken for granted. Parties have frequently had in-depth discussions on the product prior to considering the legal terms and therefore both supposedly know what they are talking about. This can lead to use of the magic term “Software” within the agreement, without providing a clear definition. If the customer then decides they aren’t happy with what they’ve been given, there is no decisive description of what was actually intended to easily resolve the dispute.
A good description sets the contractual obligation and is an opportunity to confirm that what you are planning to provide matches what the customer thinks they are getting.
Issues to consider:
Businesses tend to place a lot of focus on deciding who is to “own” a software product. It can be more practical first to consider the different elements comprising the software and what rights the respective parties will want or need to the finished product. The product may derive from a combination of inputs. For example, it could be developed from a customer’s designs, incorporating your original code together with third party components.
There are further complications in considering the different types of intellectual property which potentially subsist. Copyright may arise in relation to the expression of the coding and any artistic or literary output1. Depending on the nature of the solution, database and design rights should also be considered. For highly innovative developments, we enter the complex and costly realm of patent protection for inventions implemented using software. This is a topic of hot debate with variations in the law and its application across different countries.
The resulting software product may therefore be a complex bundle of different intellectual property rights, owned by you, the customer and/or third parties. The rights to be granted to the customer may be restricted by known limitations to your rights (e.g. the terms of third party licences), or even unknown factors (e.g. third party patents). Intellectual property terms therefore need to be carefully drafted on a case-by-case basis; clearly highlighting the extent of the customer’s and your rights to use the resulting product and/or its different elements, and avoiding too “broad-brush” promises on ownership.
If the contract does not set out the intended rights, the legal assessment is made more complex. Licences are likely to be implied (which may be exclusive or non-exclusive) and, in some cases, an assignment of beneficial ownership may be inferred. It is therefore preferable to include specific provisions in the contract.
Issues to consider:
1 A recent case highlighted that copyright protects the expression of creativity in software development and not the functionality of the software or the programming language used. However, in relation to functionality, see comments on patent protection above.
On a related point, if you are using sub-contractors to assist you with development, you will want to ensure that you are obtaining from them the rights and guarantees which you need in order to fulfil your obligations to the customer. In relation to intellectual property, this may mean requiring them to assign their rights to you, and providing similar warranties on originality etc.
To the extent the code is developed by your employees, it would be prudent to communicate the key requirements of the contract to them, and undertake checks to ensure these are met.
The contractual terms should of course address many more legal and commercial matters than those outlined above. Many provisions will link to the issues raised above; for example you should consider including limitations in your liability should you not meet the agreed requirements. You may also wish to link payment terms to provisions granting intellectual property rights to the customer; seeking to ensure that if you don’t get paid, the customer does not have the right to use your product.
Olivia Whitcroft, principal of OBEP, 29 February 2012
This article provides general information on the subject matter and is not intended to be relied upon as legal advice. If you would like to discuss this topic, please contact Olivia Whitcroft using the contact details set out here: Contact Details