IT projects are well known as being prone to disputes developing. Why? Because they are technically complex and give rise to many legal issues. But often the root cause is that there is no proper software development agreement in place.
By the time a prospective client approves your software development proposal, you as a software developer will already have put considerable time and effort into the project. There will no doubt already be various documents describing the project, but what you really need is a software development agreement that has been properly drawn up as the legal contract. Without that, there is plenty of scope for misunderstandings between you and the client as to what you as developer are undertaking to provide and what the client thinks the development will achieve for its business.
So if you are a software developer, before you start on the development, it really is worth making sure that you have a software development agreement in place to protect you.
Your software development agreement should address the following areas:
• Specification – you will have discussed the business requirements that the client wants the software to meet, but the contract should clearly identify the technical specification that the software development is to achieve. By defining your responsibilities as software developer in a more objective way, the technical specification can play an important role in reducing potential areas for dispute and managing the client’s expectations.
• Project plan –realistic timescales and deadlines for the software development project should be set out in the software development agreement. Any plan for implementing the project discussed during the proposal process should be carefully reviewed before being used for the legal contract.
• Client’s responsibilities – any matters for which the client is responsible should be set out, as your ability to perform your responsibilities as developer may be dependent on the client fulfilling certain tasks.
• Change control – changes which happen during the course of the development need to be managed and documented to avoid costs and deadlines being exceeded. For this you should include a suitable change control procedure.
• Acceptance of the developed software – include a procedure for confirming that the development of the software is complete – typically achieved in conjunction with acceptance testing.
• Pricing and payment – the basis of the charge for the software development - usually time and materials, fixed price or some combination of these methods – and timing of payments should be set out in the software development agreement.
• Warranties – assurances sought by the client as to the performance of the completed software will need to be carefully framed so as to satisfy the client sufficiently whilst being appropriate and not unduly risky for you as developer.
• Limitation of liability - you as developer of the software will want to limit your liability so far as possible, but this will need to be balanced against what is acceptable to the client and what it is reasonable and permissible legally.
• Rights in the software – the client will need sufficient rights to be able to use the developed software as agreed, but you as developer also need to protect the rights you need to retain in your business for any ongoing services and future projects. If licences for any third party modules are needed that should also be specified.
• Other services – consider whether the client may benefit from any additional services in relation to the software once developed, such as training, updating, maintenance, support etc. Specify if these are included or available at extra charge and set out relevant details.
There is more information on the above points in an article I have written on this topic.
For advice on software development agreements please contact me, Sue Mann.
Commercial Solicitor, Birmingham
This blog is not intended to constitute legal advice, nor is it intended to be a complete and authoritative statement of the law, and what we say might be out of date by the time you read it. You should always seek legal advice to confirm whether or how any information in this article applies to your particular situation. We offer a free telephone consultation to discuss your particular circumstances.