Software Licensing.

Chathmini Jayathilaka
9 min readSep 8, 2020

--

What Is a Software License?

A software license is a contract between the entity that created and supplied an application, underlying source code, or related product and its end-user. The license is a text document designed to protect the intellectual property of the software developer and to limit any claims against them that may arise from its use.

A software license also provides legally binding definitions for the distribution and use of the software. End-user rights, such as installation, warranties, and liabilities, are also often spelled out in the software license, including protection of the developer’s intellectual property.

Most software falls under one of two categories that have distinct differences in how they are viewed under copyright law:

  • Proprietary — also referred to as “closed source”
  • Free and open-source software (FOSS) — referred to as “open source”

FOSS software licenses — give rights to the customer that include modification and reuse of the software code, providing the actual source code with the software product(s). This open-source type of licensing affords the user authority to modify the software functions and freedom to inspect the software code.

Proprietary software licenses — provide no such authority for code modification or reuse and normally provide software with operational code only, and no source code. A proprietary software license often includes terms that prohibit “reverse engineering” of the object code with the intention of obtaining source code by the licensee.

In both cases, the software license will most often specify limitations of liability from the use of the software product, any mutual responsibilities such as support, and any warranties or disclaimer of warranty.

Where software is not covered by any license, it is normally categorized as:

  • Public domain software — freely available for use and not copyright protected
  • Private unlicensed software — such as business applications that still falls under copyright protection

Open source and proprietary software licensing may also specify additional restrictions and terms:

  • Transfer of ownership to the buyer or retention of ownership by the seller
  • Any authorization for copying, selling or distributing the software
  • Definition of whether the license constitutes purchase or leasing of the software

What Are the Types of Software Licenses?

There are five main software license categories or types used to cover different kinds of software and various business arrangements. These encompass a wide spectrum of licensing scenarios, from free software (public domain) to paid commercial software (proprietary).

Between these two extremes, there are also three categories (GNU/LGPL, permissive, and copyleft) that apply to various forms of open-source projects. Failure to follow the terms and conditions of an open-source license can lead to revealing trade secrets or even legal action from the project’s developers.

5 Types of Software Licenses You Need to Know About

1. Public Domain License

When software is defined as being in the public domain, anyone is free to use and modify the software without restrictions. This is a “permissive” license that allows adopting the code into applications or projects and reusing the software as desired.

For many reasons, businesses must exercise caution when adopting public domain software in projects or other important applications:

  • Public domain software may not always adhere to best coding practices or may not be up to standards of secure software that the application requires.
  • Software that does not fall under specific licensing terms is not always public domain code. Be sure the software is truly public domain before copying, reusing, or distributing it.

2. GNU/LGPL — GNU Lesser General Public License (LGPL)

Under an LGPL license, developers have the rights to link to open source libraries within their own software. The resulting code can be licensed under any other type of license — even proprietary — when projects are compiled or linked to include an LGPL-licensed library.

The caveat is that if any part of the library is copied into the code or modified, the terms of the original LGPL license will apply to the developed code that used the library.

3. Permissive

This type of license is one of the most common and popular among open-source software licenses. Under a permissive license — also referred to as “Apache” or “BSD style” — there are few restrictions or requirements for the distribution or modifications of the software. Another variation of a permissive software license is the “MIT” license.

Variants in permissive licenses include differences in requirements for preserving license notices and copyrights for the software, as well as how the software may be used (commercial or private), trademark requirements, and other stipulations.

4. Copyleft

This license’s terms are restrictive — known as reciprocal licenses. Under the terms of a copyleft license, the licensed code may be modified or distributed as part of a software project if the new code is distributed under the same software license.

This means that if the code included in the software product was specified to be for “personal use only,” the new product being distributed must carry that same designation/restriction.

Since the original software included with the new project allowed modifications and distribution, this may not be the best license for software developers because the resulting code must also carry the copyleft license type — including the availability of the source code.

5. Proprietary

These software licenses make the software ineligible for copying, modifying, or distribution. This is the most restrictive type of software license, protecting the developer or owner from unauthorized use of the software.

How Does Software Licensing Work?

New users of the software will normally enter into an end-user license agreement (EULA) that constitutes a legal definition of the relationship between the licensor (provider) and licensee (user or business). The EULA is a contract that establishes the rights of the purchaser for installing and using the software.

Every EULA contains a clause that stipulates when its conditions are activated by an end-user. This may be the moment the user opens the product packaging or, for example, when the user clicks on a button agreeing to accept the EULA’s terms to access it.

Cloud-based applications such as Software as a Service (SaaS) will often include license details in EULAs including:

  • Monthly or annual charges per user
  • Duration of the agreement
  • Terms of cancellation of the agreement
  • Recovery of any charges if canceled during the agreement

Additional use of software licensing is in cases where a software developer or firm grants authority for selling or distributing the software under the second party’s brand. The developer retains ownership, but the re-branding company is permitted to resell the software product. This method of licensing is called “white labeling.”

What Is a Software License Agreement?

A software license agreement is a legal document that stipulates several key conditions between a software company or developer and a user to allow the use of the software.

These conditions are designed to protect the developer’s intellectual property rights and to limit claims against them for potential damage resulting from the use of their software. In some cases, pricing and terms of payment may also be included, though this is often covered in a separate document. The primary purpose of the agreement, however, is to provide detailed ground rules for use of the software:

  • Where the software may be installed and how many instances may be installed.
  • How the software can be used.
  • Whether the software may be copied, modified, or redistributed.
  • Any copyrights that apply to the software.
  • Ownership of the software — most often specifying that the provider retains all rights of ownership.
  • Duration of the terms of the agreement.
  • What constitutes the correct usage of the software.

What Are Software Licenses Used for?

Developers release software for a number of reasons, whether it be to demonstrate a new idea, provide benefit to as many people as possible, or for financial and economic gain. In order to ensure that all parties involved in the process are able to benefit from the software, the terms and conditions for its use must be clearly defined.

These terms and conditions are expressed as a licensing agreement. Software licenses are critical for software providers and users alike for many reasons:

  • Written authority for use of software — protects business users and individuals from liability and copyright infringement claims
  • Clarification of the number of eligible users of the software
  • Definition of what is included — maintenance, upgrades, support
  • Warranty agreements and problem mediation process
  • Distribution permission and limitations
  • Use rights, such as copying or modifications
  • Copyright definition, including software and any documentation
  • Dates — for installation, training, support assistance, and license duration
  • Termination terms, penalties, financial liabilities
  • Any performance guarantees and remedies

Software licenses define the complete agreement between the licensor and licensee. The goal is to clarify the relationship from both a legal and technical viewpoint, so there are no surprises or guesswork regarding responsibilities while the agreement is in effect.

For mobile software, the license terms state how much of the user’s sensitive personal data stored on the device an application vendor is permitted to access. These agreements are designed to protect personal information such as financial statements, location, or health data and prevent its misuse.

How Much Does a Software License Cost?

Software license pricing varies widely, depending on the type of software, how it is provided, and the supplier’s cost to develop the software. SaaS providers typically provide a subscription model where the charge is based on the number of users. This grants businesses a great deal of cost control and flexibility.

Software license pricing will vary greatly among software providers that offer complete on-premises business solutions as opposed to those providing open-source objects for building internal applications and web functions. While these costs may seem unnecessary, much like an insurance policy, it will provide protection when you actually need it.

Under this type, there are lots of software licenses in the world like MIT, GPL, Apache, etc. These are the result of research done in 2016 about what are the software licenses that mostly used in the world.

  1. MIT, 25%
  2. GPL 3.0, 19%
  3. Apache 2.0, 15%
  4. GPL 2.0, 15%
  5. BSD 3, 6%
  6. LGPL 2.1, 6%
  7. Ms-Pl, 5%
  8. BSD 2, 3%
  9. Zlib, 1%
  10. Eclipse 1.0, 1%
  11. BSD 4, 1%
  12. Other, 5%

This is some information about some software licenses.

MIT :- The MIT License is a permissive free software license originating at the Massachusetts Institute of Technology in the late 1980s. As a permissive license, it puts only very limited restriction on reuse and has, therefore, high license compatibility. It is compatible because it can be re-licensed under other licenses.

Apache :- The Apache License is a permissive free software license written by the Apache Software Foundation (ASF).[5] It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software under the terms of the license, without concern for royalties. The ASF and its projects release their software products under the Apache License. The license is also used by many non-ASF projects.

BSD licenses:- BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD license was used for its namesake, the Berkeley Software Distribution (BSD), a Unix-like operating system. The original version has since been revised, and its descendants are referred to as modified BSD licenses.

Eclipse Public License:- The Eclipse Public License (EPL) is a free and open source software license most notably used for the Eclipse IDE and other projects by the Eclipse Foundation. It replaces the Common Public License (CPL) and removes certain terms relating to litigations related to patents

references that I used.

--

--