The 1980’s saw a spike in the popularity and demand for software applications/programmes. Accompanying this was a substantial rise in the risk associated with relying on third-party software suppliers. In response to this, Software Escrow was created.
Whilst the foundational concept of Software Escrow being a risk mitigation tool has remained as a constant, other elements of the Escrow space have significantly changed over the years.
A common question from those that are new to Software Escrow is ‘What is the difference between Traditional Software Escrow and SaaS Escrow? (also known as Cloud Escrow). In the simplest of terms, Traditional Escrow safeguards applications that are installed on-premise whilst SaaS Escrow safeguards cloud-hosted applications.
This type of Software Escrow Solution involves safeguarding software applications that are installed on and operate from the physical premises of an organisation. Whilst different types of Escrow Solutions have entered the market, Traditional Software Escrow still remains a popular choice for those seeking to implement reliable risk mitigation for applications that installed on-premise.
When SaaS applications first took off, there was widely believed misconception around them not being applicable to Software Escrow. However, in the absence of a tried and tested risk mitigation plan, SaaS applications are actually more susceptible to risk. To mitigate against the risk associated with cloud-hosted applications, SaaS Escrow was introduced. This type of solution may not only include the software source code but also the data, development environment, and other components essential for the SaaS service to function.
In terms of actual Software Agreement types, some common examples include:
Description: Involves one software licensor, one licensee, and an Escrow agent. This is the simplest form, where the agreement is set up for a single client.
Use: Suitable when there is a direct, one-on-one relationship between the software vendor and the licensee.
Description: Involves a software licensor, multiple licensees, and an escrow agent. A single escrow deposit can be shared by many beneficiaries.
Use: Useful for software vendors with multiple clients using the same software. Each client can be assured that the software source code will be accessible if certain conditions arise.
Description: Specifically designed for Software as a Service (SaaS) applications. It may include not only the software source code but also the data, development environment, and other components essential for the SaaS service to function.
Use: Appropriate for cloud-based software solutions where the continuity of service and data access is critical.
Description: Includes both software and hardware components in escrow. This ensures that hardware specifications, designs, and related software are protected.
Use: Suitable when the software is tightly integrated with specific hardware, and continued access to both is needed for business continuity.
Description: Broader in scope, it may include software, hardware, and other intellectual property assets (e.g., designs, blueprints, documentation).
Use: Useful when the continuity of a broader technology solution needs to be assured, not just the software alone.
Description: Involves a four-party contract between the software vendor, the distributor, the client, and the Escrow agent. It is the most common type of agreement where the distributor resells the vendors software directly to a client which can involve support and maintenance responsibilities.
Use: Ensures that the interests of all three parties are covered, with clear conditions under which the escrow materials can be released.
It’s evident that the Software Escrow space has experienced a high level of evolution overtime. Interestingly, it seems that this trajectory of continued growth is set to continue, especially with the impact of AI continuing to transform the world of technology.
When it comes to the topic of software development, it’s clear that AI has reshaped the processes behind designing and building software. Alongside this, AI has been utilised to enhance and elevate the productivity and accuracy of software programmes.
In our latest blog “The Impact of AI on Software Development”, we explore some key changes and advancements that have been brought on by the ever-evolving relationship between software development and AI. Check it out here.
If you have any questions regarding the content within this newsletter, or would like to learn more, please don’t hesitate to get in touch.