Software is a key asset of many businesses. It may be essential to the ongoing operation of the business. Accordingly, significant business interruption and loss could be suffered if a business owner lost the ability to effectively use, maintain or modify that software. This could occur if the software was developed or is maintained by a contractor which becomes unable or unwilling to continue to provide services to the business. In such a scenario the business would want to be able to engage a replacement contractor to provide support. The replacement contractor will be in a much better position to assist if it has access to the source code and any other necessary or useful supporting materials.
Unfortunately for businesses, in most cases copies of source code and updates to the same are not provided by software developers to their clients. Further, in Australia at least, unless agreed otherwise under software development and support agreements any copyright in new coding done by the developer will belong to that developer. The client’s rights are limited to a licence to use that software. The client has no right to be provided the source code unless this has been negotiated and agreed.
Unless it is agreed at the time the developer is first engaged, it will often be difficult for a client to convince a developer to transfer ownership of, or provide access to, the source code at a later date. The developer may not be able to transfer ownership of much of the source code as it is “generic” coding which does not belong to the developer.
A strategy that can be adopted to ensure the client can access the source code should its relationship with the developer cease is to put a Software Escrow Agreement in place. Under this arrangement the developer must deposit a copy of the source code and supporting materials with a third party escrow agent. The developer must update the source code and materials deposited on a regular basis. Under the agreement, the agent is obliged to release the source code and materials to the client if certain events occur (eg failure of the developer to provide maintenance and support for a period of time, insolvency of the developer, or cessation of trading of the developer). With access to the code and supporting materials the impact of these events can be minimised as the client can provide access to a replacement contractor. If the use of the software relies on third party components and relationships this will also need to be considered.