The source code of a software program is the detailed specification or “blueprint” of its creation, operation and functionality and although it is not required for the normal commercial use of the program by an end-user, it is needed for the purposes of modification, enhancement, “debugging”, support or indeed, rectification of defects.
The source code is therefore highly confidential and the owner of the copyright of the software will not wish to disclose the same to any end-user or distributor even though such parties have entered into an agreement or licence with the Software Owner for use or distribution of the software.
However, if the software program is essential to an end-user or distributor’s business, such end-user or distributor may require the Software Owner to arrange for the source code to be made available to them in the event that the Software Owner goes out of business or is in material breach of its obligations to support and maintain the software to a proper operational standard.
Such an arrangement is now commonly made with an independent third-party, an Escrow Agent, appointed by mutual agreement of both parties (Software Owner and end-user/licensee or distributor). The Escrow Agent is contracted by the parties to hold the source code until such time as the parties’ agreement or licence has expired or terminated or until the occurrence of certain specific events, usually the liquidation or material breach of the Software Owner, whereupon the Escrow Agent is authorised, upon certain conditions specified in the Escrow Agreement, to release the source code to the end-user or distributor, as the case may be.
The purpose therefore of an Escrow Agreement is to provide for the terms of deposit of the source code and the conditions of its release to the end-user or distributor or its return to the Software Owner.
If drafted for the benefit of the Software Owner, which is the case in this contract, the obligation to deposit may only relate to the source code and not for example, also to software listings, object code and all drawings and specifications which together describe every aspect of the software and every step in its creation. The obligation which is the least onerous for the Software Owner is to deposit the source code at the outset of the relationship and not be required to continually update the source code as the software is debugged and enhanced throughout the duration of the agreement or licence with the end-user or distributor. If such is the case then clause 3 can be amended accordingly.
In addition, from the Software Owner’s viewpoint, this Contract does not require the Escrow Agent to verify or check that the source code which it is actually holding is indeed that which the end-user/distributor uses (as is the case in Contract 13). The verification process is very important to the end-user/distributor to ensure that, in the event that the escrowed material is released (i.e. on the Owner’s liquidation or default), it will prove to be not only the full source code, object code and all necessary materials relating to the software but also the version used by the end-user/distributor (see Explanatory Note to Contract 13).