Software License

Bimali Wickramasinghe
3 min readSep 7, 2020

License agreement is created between the developer and the user on how the software product can be used. Terms of the license are determined by the owner of the patent or copyright. The terms and conditions are detailed in the license agreement. These terms include, who can use the software, how long can a user use the software, number of installations that can be done and what features can be modifies, restrictions, permitted uses, intellectual property rights, warranties and limitation, distribution terms.

There are mainly two types of software and they are proprietary software and free and open source software. And software licensing is also differing to these two types. Proprietary software usually uses a ‘End User License Agreement’ where user have to accept all terms and conditions. In any case of a violation of their terms, the user can face civil penalties. Open source software uses ‘Free Software License’. They are usually free of restrictions for personal use. There may be some restriction if the software is redistributed. This type of license does not give the user ownership or unlimited rights to software. Mainly there are five (5) types of software license and the first four (4) of those are open source licenses. They are as follows.

1. Public Domain: Software that are placed in the public domain has no ownership. It is the most permissive license. The software in the public domain can be modified, distributed/ sold without any restriction. An examples is CC0 (Creative Commons).

2. Permissive: This is the most popular license used with free and open source software. This is also known as ‘Apache style’ or ‘BSD style’. This is a software license with minimal restrictions on how the software can be used, modified and distributed. Examples for this type of license are, GNU All-Permissive license, Apache license, MIT license, BSD license and Apple public source license.

3. LGPL: Stands for lesser General Public License. This allows your software to link with an open source library. If you use a lesser general public licensed library, you can release your code under any type of license. An example for this is GNU General Public License.

4. Copyleft: this is also known as ‘Protective License’. This gives the right to freely distribute and modify a software and forbids proprietisation. An example for this type of license is GPL (General Public License), AGPL (Affero General Public License)

5. Proprietary: Used for non-free software/ closed-source software. This type is very restrictive. The software with this license cannot be modified or distributed. The all rights are reserved. An example for a software with proprietary license is Windows.

The following are the currently available and most popular open source software licenses.

1. Apache License 2.0 (Permissive License)

2. BSD 3-Clause “New” or “Revised” license (Permissive License)

3. BSD 2-Clause “Simplified” or “FreeBSD” license (Permissive License)

4. GNU General Public License (GPL)

5. GNU Library or “Lesser” General Public License (LGPL)

6. MIT license (Permissive License)

7. Mozilla Public License 2.0

8. Common Development and Distribution License

9. Eclipse Public License version 2.0

Licensing a software depends on whether the software is free, purchased or contains open source code. As mentioned in above, you must choose the proper licensing method for your software. After you get the license, it should be clearly represented in the front page of your product.

References:

https://opensource.org/licenses

https://www.synopsys.com/blogs/software-security/5-types-of-software-licenses-you-need-to-understand/

https://www.termsfeed.com/blog/license-software/

--

--

Bimali Wickramasinghe

Demostrator in Software Engineering, University of Kelaniya Sri Lanka