Panda Law ← Back to main site
On this page

Technology

Software Development & Licensing

Last updated

What should a software development agreement cover? #

A well-drafted software development agreement should clearly address the scope of work and specifications, milestones and delivery timelines, acceptance testing criteria, IP ownership (who owns the code, including any pre-existing IP and newly developed IP), source code access and escrow arrangements, change management procedures, warranties, liability caps, indemnities, confidentiality, data handling obligations, and termination rights. The most common disputes in software development arise from ambiguous scope definitions and unclear IP ownership clauses. Getting this right at the outset is significantly cheaper than litigating them later.

Who owns the IP in custom-developed software? #

Under Indian copyright law, the author of software is the first owner of copyright. If the software is developed by an employee in the course of employment, the employer owns it. If the software is developed by an independent contractor or a third-party development company, the developer owns the copyright unless there is a written assignment. A common misconception is that paying for development automatically transfers IP ownership. It does not. You need an explicit written assignment clause in the development agreement. We also advise on distinguishing between pre-existing IP (which the developer retains) and newly developed IP (which should be assigned to the client).

What is a SaaS agreement and what should I look out for? #

A SaaS (Software as a Service) agreement governs the provision of software hosted by the provider and accessed by the customer over the internet. Key terms to negotiate include the scope of the licence (number of users, usage limits, territory), service levels and uptime commitments (SLAs), data ownership and portability (what happens to your data if you leave), security obligations and breach notification, sub-processing and data transfer arrangements, pricing and escalation mechanisms, liability limitations, and termination and exit provisions including data retrieval periods. The most important issue from a customer’s perspective is usually data: who owns it, where it is stored, and how you get it back.

What is software escrow and when do I need it? #

Software escrow is an arrangement where the source code of a software product is deposited with a neutral third party (the escrow agent) and released to the customer only upon the occurrence of certain trigger events, typically the insolvency or material breach of the software provider. Escrow is important when you are dependent on a proprietary software product and need assurance that you can maintain or modify it if the vendor can no longer support it. We advise on structuring escrow agreements, defining release triggers, and ensuring that the deposited materials are complete and usable.

What is the difference between a software licence and an assignment? #

A licence grants permission to use the software under specified terms while the licensor retains ownership. An assignment transfers ownership of the IP itself. Most commercial software is licensed, not assigned. The distinction matters because a licensee’s rights are limited to what the licence permits, while an assignee becomes the owner and can exploit the IP without restriction. When commissioning custom software, clients typically want an assignment of the newly developed IP and a licence back to the developer for any pre-existing components. We advise on structuring these arrangements clearly.

What are the key differences between SaaS, PaaS, and IaaS agreements? #

SaaS (Software as a Service) provides access to a complete application. PaaS (Platform as a Service) provides a platform for building and deploying applications. IaaS (Infrastructure as a Service) provides computing resources such as servers, storage, and networking. The legal issues shift as you move down the stack. SaaS agreements focus on application functionality, user access, and data handling. PaaS agreements focus on development tools, deployment environments, and the customer’s ability to build on the platform. IaaS agreements focus on uptime, capacity, security, and the customer’s responsibility for what runs on the infrastructure. Data ownership, security obligations, and liability allocation need to be tailored to the specific service model.