What is a Software Development Agreement?
Software development agreements are put in place to deal with the commercial relationship where one entity provides software (which is often bespoke) to a customer. As these developments become more bespoke and technical in their nature so do the legal issues surrounding these agreements.
Agreements are often entered into at the outset when the relationship begins but needs to take into account changes along the way as technical specifications change, making the software development agreement one of the most critical agreements seen in this area of commercial enterprise.
Key Provisions in a Software Development Agreement
Essentially the software development agreement manages the entire relationship from concept through to after installation services such as warranties and staff training. The first issue that needs to be considered is the type of service that is being offered. For example whether bespoke software is being developed or whether these are actually off the shelf items that are being sold onwards.
Typical clauses deal with the scoping process which is identifying the exact needs of the client, testing that needs to be done both before installation and post installation as well as the way in which changes can be dealt with as the project progresses.
Scoping and Revising Estimates
One of the most substantial areas of drafting that need to be undertaken in any software development arrangement is dealing with the initial estimate and how this should be amended once the full scoping has been undertaken. When the document is formed originally it is unlikely that the full details of the project will be understood. Further scoping will be necessary to develop the full technical specification. With this in mind a clause is needed to deal with the situation that the scoping work requires the estimate to be revised. This will normally allow the supplier to alter the estimate if they feel more work will be necessary but there should also be a get out clause allowing the customer to terminate the contract or to reduce the scope if they cannot meet the added financial burden. Consideration needs to be given as to whether or not the customer should pay a termination fee if they decide to terminate at this point, whilst this may offer some security to the supplier that they will not lose time but will result in the customer owning all documentation produced at this point leaving them free to take the work elsewhere.
Testing and Acceptance Processes
All software regardless of how bespoke it is will need to be tested at various different stages in the process to ensure that it meets with the business requirements of the customer. In most cases this will involve ensuring that the individual components of the software package work prior to installation as well as further testing when it has been installed so that it can be signed off as working in line with the expectations of the customer.
For more information on:
- Other Points for the Agreement
- Payment Schedules
- Staff Training
- Other Commercial Considerations: