A technology development agreement sets out the terms and conditions between the developer and the customer, for building a tailor-made software as per the requirements of the customer. This agreement sets out the process of developing, selling, transferring, and maintaining the software, to create a smooth flow during all the phases. This agreement is a kind of service agreement which sets out the narrative of the service being rendered and its subsequent operation.
The major aspects of a technology development agreement are to set out the service parameters of the developer and deal with the questions relating to the ownership of the software, intellectual property, support and maintenance, source codes, etc. For this the following clauses need to be clearly elucidated in the agreement:
Services: The list of services should be in line with the software requirements and other specifications as required by the customer. The agreement should set out the expectations each party has in relation to:
- The software development process i.e., determining which party will initially draft the specifications and timeline for providing adequate review and input by the other party;
- The phasing of the key and related deliverables i.e., a detailed outline of product specifications related to each deliverable and the final product;
- Formulating a clear development timeline/milestones, including:
- the process and consequences to timeframes if missed;
- whether liquidated damages would be appropriate for any delays in the project; and
- How would this affect the payment cycle.
- Responsibility of respective parties for the ancillary software and IT/infrastructure for the development; and
- Triggers for payment to be identifiable for both parties – will payment be conditional upon delivery of the product per specifications or not.
Intellectual property: It is important to set out who holds the ownership to product/deliverables of the project. Traditionally, the customer will hold all right, title and interest in the work product. However, it is imperative that this is clearly mentioned in the agreement.
Testing of the software: The agreement should outline the expectation and rounds of acceptance testing of the software. Generally, there are two rounds of testing i.e., pre-delivery testing and the actual acceptance testing. In the pre-delivery testing, each aspect of the deliverable will be tested to check if it meets the specific requirements of the customer and the actual acceptance testing includes the test of the complete work product.
Confidential Information: Like most service agreements, it is important to define which aspect/s of the information shared between the parties are to be kept confidential and for how long. Therefore, parties must agree that all persons involved in the project should be bound to conform to the confidentiality clause of the agreement and be held liable in case of any disclosure or violation.
The aim of this agreement is to outline the expectations of the customer and provide a smooth flow during the development of the software. Therefore, it is important to seek professional advice while entering into such development process. It will help draft a tailor-made agreement covering all aspects of the process, towards the satisfaction of all parties involved.
The content of this article is intended to provide general guidance on the subject matter. Specialist advice should be sought about your specific circumstances.
- https://www.mdplaw.com.au/insights-publications/software-development-agreement accessed on 17th December 2021.
- https://drewstevenslaw.com/software-development-agreement-checklist/ accessed on 17th December 2021.
Key words: Software Development Agreement, Important clauses, Technology Agreement.