0% found this document useful (0 votes)
40 views19 pages

OSS Unit-2 Notes

Oss unit notes are available
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views19 pages

OSS Unit-2 Notes

Oss unit notes are available
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

303105103 -- Open-Source Software

Unit -2:
Open-Source Principles and Methodology: Open-Source History, Open-
Source Initiatives, Open Standards Principles, Methodologies, Philosophy,
Software freedom, Open-Source Software Development, Licenses, Copyright vs.
Copy left, Patents, Zero marginal cost, Income-generation Opportunities,
Internationalization. Licensing: What Is A License, How to Create Your Licenses,
Important FOSS Licenses (Apache, BSD, PL, LGPL), copyrights and copy lefts,
Patent.

❖ Weightage:20%

Open-Source History: The open-source software (OSS) movement has played a


transformative role in software development. While the movement gained
significant momentum around 1998, its roots extend much further back, dating to
the early days of computing. The OSS model, which encourages the sharing,
modification, and redistribution of software code, contrasts with the traditional
proprietary software model.

➢ In the 1980s, pioneers like Richard Stallman launched the Free Software
Movement, laying the groundwork for what would become OSS. The GNU
Project, which aimed to create a free operating system, and the subsequent
creation of the GPL (GNU General Public License) were key milestones in this
early period.
➢ The rise of the Internet in the 1990s further accelerated the spread of OSS,
enabling collaborative development on a global scale. By 1998, when projects
like the Linux operating system and the Apache HTTP Server were gaining
widespread attention, the OSS model began to be recognized as a viable and, in
many cases, superior approach to software development.

1
303105103 -- Open-Source Software

➢ The OSS movement has since revolutionized how software is created and
distributed, fostering innovation, collaboration, and transparency in a rapidly
evolving field. Today, OSS is integral to many technologies that power the
modern digital world, from web servers to operating systems and beyond.

❖ Who started open-source software?


➢ The A-2 (Arithmetic Language v2 system) was a groundbreaking piece of
software created in 1953 by the UNIVAC division of Remington Rand. What
makes the A-2 system particularly significant is that it is considered the first
example of free and open-source software. This means that when the software
was released, customers received not just the program but also its source code—
the actual instructions used to create it.
➢ Even more interestingly, customers were encouraged to modify or improve the
software and then share their enhancements with UNIVAC. This collaborative
approach laid the foundation for the open-source movement, where sharing and
improving software together became a key principle.

2
303105103 -- Open-Source Software

❖ Open-source History Table:

Here is the description of Open-source History,

❖ Open-source Initiatives:

➢ Initiatives in open-source software are organized efforts or projects aimed at


promoting, developing, and supporting open-source software (OSS). These
initiatives can take many forms, from creating new software to advocating for the
use of open-source principles in various sectors.
➢ According to founding member Michael Thiemann, the Open-Source Initiative
chose the phrase "open source" to "dump the moralizing and confrontational
attitude that had been associated with 'free software'" and promote open-source
concepts based on "pragmatic, business-case grounds."
➢ Open-source software, as defined by the Open-Source Initiative, is software that
comes with human-readable source code. This allows users the freedom to run,
study, modify, enhance, and adapt the code for any purpose.

3
303105103 -- Open-Source Software

❖ The main Mission of this Open-source initiative is:


➢ The Open-Source Initiative (OSI) is a global non-profit organization established
to promote the benefits of open-source software and foster collaboration among
different open-source communities.
➢ Open-source software development leverages the power of distributed peer
review and transparency in processes. It offers benefits such as improved quality,
greater reliability, enhanced flexibility, reduced costs, and freedom from
restrictive vendor lock-in.
➢ Developers, users, businesses, and governments can collaborate on open source
projects under the framework of the Open Source Initiative's Approved License
program, which ensures compliance with recognized open source standards and
licensing protocols. This coordination allows for streamlined development and
adherence to industry best practices.
➢ The key attributes of OSI are evident in the previous statement: it promotes a
community-driven culture that values sharing, collaboration, and recognition of
the source and contributors. Similarly, social media nurtures the ideals of a gift
economy by encouraging connections and the free exchange of information.

4
303105103 -- Open-Source Software

❖ What are Open Standards Principles?


➢ Open Standards can include licensing terms designed to prevent subversion
through embrace-and-extend tactics. These licenses may set conditions for
developing and distributing software that is compatible with extensions and
requires the publication of reference materials. A specification by itself does not
constitute an Open Standard; its openness is determined by the guiding principles
behind it and how it is made available and utilized.

➢ A few famous examples of open standards are XML, SQL, and HTML.
Businesses within an industry share open standards because this allows them to
bring huge value to both themselves and to customers.

❖ List OF Open Standard Principals:


1. Availability: Open Standards are accessible to everyone for review and
implementation.
2. Maximize End-User Choice: Open Standards create a fair, competitive market
for implementations of the standard. They do not lock the customer into a
particular vendor or group.
3. No Royalty: Open Standards are free for all to implement, with no royalty or fee.
Certification of compliance by the standards organization may involve a fee.
4. Extension or Subset: Implementations of Open Standards may be extended, or
offered in subset form. However, certification organizations may decline to
certify subset implementations and may place requirements upon extensions (see
Predatory Practices).
5. No Discrimination: Open Standards and the organizations that administer them
ensure impartiality by evaluating implementations solely based on technical
standards compliance. Certification bodies must offer pathways for validating
low- and zero-cost implementations while also having the option to provide
additional, enhanced certification services.

5
303105103 -- Open-Source Software

6. Predatory Practices: Open Standards may include license terms designed to


prevent subversion through embrace-and-extend tactics. These licenses might
mandate that reference information for extensions be published and that licenses
be granted to others for creating, distributing, and selling software compatible
with these extensions. However, Open Standards generally do not prohibit the
development of extensions themselves.

❖ List of Practice of Open Standards Principles:

1 Availability: Open Standards are available for all to read and implement.

➢ The ideal scenario is for both the reference implementation and the standards
document to be freely accessible for download over the Internet.
➢ Without significant effort, any software project should be able to afford a copy,
with a price comparable to that of a college textbook.
➢ Licenses attached to the standard documentation must not prevent any party from
implementing the standard using any type of software license.

2. Maximize End-User Choice:

➢ Open standards foster a fair and competitive market for implementations by


allowing:

➢ Multiple implementations from commercial enterprises, academic institutions,


and government initiatives.

➢ A range of pricing options, from very expensive to free.

3. No Royalty: There are no fees or royalties required for implementing open


standards. However, the standards organization may charge a fee for certifying
compliance.

➢ Standards-related patents must be licensed without restrictions and any additional


fees.

6
303105103 -- Open-Source Software

➢ Self-certification should be inexpensive or free as part of certification programs,


but they may also offer more expensive options with better branding.

4. No Discrimination: Aside from adherence to technical standards, Open


Standards and their administering organizations do not favor one implementer
over another. Certification bodies must ensure that low- and no-cost
implementations can be validated, and they may also offer enhanced certification
services.

➢ The standards body might adopt a license similar to the Sun Industry Standards
Source License for the reference implementation accompanying the standard
documentation. This license requires that any extensions to the standard include
a reference implementation (though not necessarily the commercial
implementation). This approach allows the standards group to actively protect
interoperability while still encouraging innovation.

5. Extension or Subset: Open Standards implementations can be extended or


offered in subset forms.

➢ While extensions may have specific requirements, certification agencies may


choose not to certify subset implementations (refer to Predatory Practices).

7
303105103 -- Open-Source Software

❖ Open-Source Methodology:
➢ Methodology has been a fundamental aspect of problem-solving since its
inception. In open-source software development, though often less visible,
methodology plays a crucial role in creating effective and successful development
processes.
➢ A collaborative approach to software development known as "open-source
software methodology" entails making a software project's source code available
to everyone for free.

➢ This means that anyone can access the source code, use it, modify it, and
distribute it, provided they adhere to the terms of the project's open-source
license.

❖ The main Concept of Methodology:

➢ Open Access: Everyone has access to the source code, which enables users to
comprehend how the program functions and alter it to suit their needs.

➢ Redistribution: The software and any modifications made by users may be


shared with others. This encourages a form of community-driven development.

➢ Collaboration: Developers are urged to work together so that they can


collaboratively improve the product by adding to the codebase.

➢ Transparency: The development process is open and transparent, enabling users


to see how the software evolves and how decisions are made.

➢ Meritocracy: Typically, contributions are judged on their merits rather than the
history of the author, promoting an inclusive environment for developers to
engage.

➢ Community-Driven: Open-source projects are often developed and maintained


by a community of volunteers or organizations who share a common interest in
the software.

8
303105103 -- Open-Source Software

➢ Licensing: Open-source projects are governed by licenses that define the terms
and conditions under which the software can be used, modified, and distributed.

➢ Commonly used software products, such as the Linux operating system, the
Apache web server, the Mozilla Firefox web browser, and the Android mobile
operating system, have been developed using open-source methodologies. The
collaborative approach of open-source development has proven effective in
fostering innovation and producing high-quality software that benefits a broad
user base.

❖ List of Open-Source Methodology:


➢ Main Five methodology in Open-source:
o Open-Source Maturity Model (OSMM) from Capgemini
o Open-Source Maturity Model (OSMM) from Navica
o Open-Source Maturity Model (OSSMM) by Woods and Guliani
o Methodology of Qualification and Selection of Open-Source Software (QSOS)
o Open Business Readiness Rating (Open-BRR)

9
303105103 -- Open-Source Software

❖ Comparison Chart:
➢ Comparison Process is defined by Methodology:

❖ Open-source philosophy and software freedom:

➢ The ideals and objectives of the open-source software movement are supported
by two notions that are familiarly tied to one another: software freedom. They
strongly emphasize the concepts of openness, teamwork, and user rights within
the software development community. Let's delve deeper into each of these ideas:
1. Transparency: Open-source projects allow anyone to access and review the
source code, enabling users to understand how the program is implemented and
how it operates. This openness helps ensure that the software is free from
malicious code and hidden features.
2. Community Collaboration: Open-source development thrives through the
collective contributions of a diverse community of developers, users, and

10
303105103 -- Open-Source Software

enthusiasts. This collaborative process integrates a range of perspectives, ideas,


and contributions, enriching the development of the software.
3. Meritocracy: Open-source projects often operate on a merit-based system, where
contributions are evaluated based on their technical quality rather than the
contributor's affiliation or status. This approach fosters an inclusive environment
that encourages developers from all backgrounds to participate and contribute.
4. Continuous Improvement: The extensive and diverse community of
contributors in open-source projects accelerates their development. New features
are frequently added, bugs are quickly identified and fixed, and the software
remains adaptable to meet evolving user needs.

❖ Software Freedom:

Users should have a specific set of fundamental rights when it comes to using,
modifying, and sharing software. This concept, known as "software freedom,"
includes the following liberties, typically protected by open-source software
licenses:

1. Freedom to Use: Users are free to use the software however they see fit.

2. Freedom to Study: Access to the source code allows users to research how the
software functions.

3. Freedom to Modify: Users have the freedom to modify the source code to meet
their demands or resolve problems.

4. Freedom to Distribute: Users are free to distribute the program and any
customized versions they make.

Open-source software licenses ensure that users have control over the software
they use by granting specific freedoms. In contrast, proprietary software often
restricts users' rights, typically preventing them from accessing the source code
or making modifications.
11
303105103 -- Open-Source Software

❖ Open-Source Software Development?


➢ Open-source software development is a collaborative process where software is
created and shared freely. "Open-source" means that the software's source code
is accessible to anyone, allowing them to view, modify, and distribute it. This
approach fosters transparency, encourages community involvement, and enables
developers from around the world to contribute to and improve the software.
➢ The process of planning, building, testing, and maintaining computer programs
and applications is known as software development. Gathering requirements,
planning, coding, testing, debugging, and deploying the software are some of the
stages involved.
➢ Software development encompasses a wide range of applications, including
desktop, web, mobile, and system software, among others. This task can be
undertaken by individual developers, small teams, or large corporations,
employing various methodologies such as Agile, Waterfall, Scrum, and others.
➢ Some Key Characteristics of Open-source Software Development:
o Source Code Access
o Collaboration and Community
o Licensing
o Continuous Improvement
o Peer Review
o Diverse Uses
o Community Support

12
303105103 -- Open-Source Software

❖ Software Licences:
➢ Software licenses are agreements that govern how software can be used,
distributed, and modified. They outline the terms and conditions under which
users may access and interact with the software. The two most common types of
software licenses are proprietary licenses and open-source licenses.
➢ Proprietary Licenses: Proprietary software licenses typically prohibit
redistribution, modification, and access to the source code. Users often need to
purchase the software, and its usage is restricted by the terms outlined in the
license.
➢ Open-Source Licenses: Open-source licenses allow users to access, modify, and
redistribute software freely. There are various types of open-source licenses,
some of which have more permissive terms, while others impose stricter
conditions to preserve the open-source nature of derivative works.

❖ Copyright vs copy-left?
➢ Copyright: Copyright is a legal right granted to the creator of an original work,
including software, which gives them exclusive control over its use and
distribution. It protects the work from unauthorized copying or distribution,
ensuring that only the author can permit or prohibit the reproduction and sharing
of their creation.
➢ Copy-Left: In contrast, the concept of Copyleft is often associated with open-
source licenses.
➢ Copyleft is a strategy designed to ensure that derivative works based on open-
source software remain open-source as well. Copyleft licenses require that if you
modify and distribute the software, you must do so under the same Copyleft
license, thereby preserving the software's openness and encouraging the
community to share improvements.

13
303105103 -- Open-Source Software

❖ Patent in Open-source:
➢ Patents are exclusive rights to inventors for a particular procedure or innovation.
Software patents can be contentious in the domain of software.
➢ Some argue that software should not be patented, as it might hinder innovation
and lead to patent battles where large corporations accumulate software patents
for strategic purposes, whether for defense or offense.
➢ On the other hand, proponents contend that software patents promote R&D
spending and protect inventors' rights.

❖ Zero Marginal Cost?


➢ In the context of digital goods like software, zero marginal cost refers to the point
where the cost of producing and distributing additional product units becomes
nearly negligible.
➢ Once the initial work is finished, creating additional copies or distributing the
software online is very low-cost. This characteristic, allowing developers to share
their work with minimal production expenses, plays a significant role in the
widespread appeal of free and open-source software.

❖ Income-generation opportunities.
➢ Even though open-source software can be downloaded for free, there are several
ways for developers and organizations to make money such as:
➢ Selling Support and Services: Companies can provide support, maintenance,
and customization services to users of open-source software for a fee.
➢ Dual Licensing: Some open-source projects offer their software under two
different licenses: a copyleft license and a proprietary license. Businesses that
wish to bypass the copyleft obligations can opt to pay for the proprietary version.
➢ Crowdfunding and Donations: Open-source software developers often receive
assistance from the community through direct donations or backing from
crowdfunding platforms.
14
303105103 -- Open-Source Software

➢ Commercial Extensions and Add-ons: Businesses can create and market


paid add-ons or extensions that improve the functionality of open-
source software.

❖ What is Internationalization?
➢ Internationalization, often abbreviated as "i18n" (representing the 18 letters
between the 'i' and 'n'), refers to the process of designing and developing software
to be easily adaptable for various languages, countries, and cultures.
➢ In this process, text strings, date formats, currency symbols, and other localizable
elements are separated from the code and stored in resource files.
➢ Making software more internationalization-friendly makes it simpler to produce
localized versions (translations) for diverse target markets, improving
accessibility and usability for a worldwide audience.

❖ What is A License?
➢ Open-source licenses facilitate the creation of free and open-source software
(FOSS). Intellectual property (IP) laws, however, typically restrict the sharing
and modification of creative works.
➢ Free and open-source software licenses leverage existing legal frameworks to
grant freedoms that promote sharing and collaboration. These licenses provide
recipients with the rights to use the software, access its source code, modify it,
and distribute its changes.
➢ These licenses apply to software for which the creation of modifications may
require the source code. They also encompass circumstances in which there is no
distinction between the executable program sent to end users and the source code.

15
303105103 -- Open-Source Software

➢ Open-source licenses generally fall into two main categories: permissive and
copyleft. Permissive licenses originated in academia and allow for modification
and distribution but with minimal restrictions.
➢ These academic licenses typically provide for a disclaimer of warranties as well
as an acknowledgment to the original authors.
➢ The free software movement serves as the source of Copyleft licensing and the
rights to change and distribute are also granted by Copyleft, which also mandates
attribution and disclaims warranties.
➢ The distinction is that reciprocity is required by Copyleft. Any derivative works
must be distributed under a Copyleft license and include the source code.

❖ How to Create Own Licenses?


➢ Some Steps to Create a License.
➢ Determine Your Objectives: Clearly outline the purpose and objectives of your
license. Decide what rights you want to grant to users and what restrictions you
want to impose.
➢ Research Existing Licenses: Familiarize yourself with existing open-source
licenses and proprietary licenses to understand how they are structured and what
provisions they include.
➢ Choose a License Model: Decide whether you want to create a permissive
license (allowing broad use) or a copyleft license (requiring derivative works to
be licensed under the same terms).
➢ Draft the License: Write the license terms in unambiguous language. Cover
aspects such as usage, distribution, modification, warranties, liability, and
attribution.
➢ Seek Legal Advice: Consult with a legal expert to review your license and ensure
it complies with local laws and is suitable for your specific use case.

16
303105103 -- Open-Source Software

❖ The Important FOSS Licenses (Apache, BSD, GPL, LGPL)?


➢ Apache License 2.0: A permissive license that allows users to use, modify,
distribute, and sublicense the software. It requires users to retain copyright notices
and disclaimers and provides a clear patent grant.
➢ Primitive: The license offers users a wide range of usage rights without imposing
stringent copyleft limitations.
➢ Patent Grant: It comes with a clear patent grant, assuring customers that they
won't get into problems with the original authors about patent-related matters.
➢ Notice and Disclaimer: When redistributing the software, users must keep the
copyright notices, licensing conditions, and disclaimers.

2) BSD Licence: Another permissive open-source license used for various software
projects is the BSD License, also known as the Berkeley Software Distribution
License. It allows users to freely use, modify, and distribute the software under
specific conditions. The two main versions are the original 3-clause BSD License
and the updated 2-clause BSD License.

❖ The main Key Features are:


➢ Permissive: The BSD License is permissive, similar to the Apache License,
allowing users significant freedom to use the software without imposing strict
copyleft requirements.
➢ Redistribution Clause: The three-clause BSD License has a clause requiring the
redistribution of the license text and copyright notice when distributing the
software.

3) GNU General Public License (GPL): The GNU General Public License (GPL)
enforces strong copyleft, aiming to promote software freedom and the open-source
model. Any modifications or derivative works based on GPL-licensed software must
also be distributed under the GPL.

➢ The main key Features Are:

17
303105103 -- Open-Source Software

➢ Copyleft: The GPL requires that any modifications or derivative works be


licensed under the same GPL terms.
➢ Availability of Source Code: GPL-licensed software must include the source
code or make a documented promise to do so upon request.
➢ Concerns about compatibility: Projects that use GPL code in their codebase
may also need to be distributed under the GPL.

4) GNU Lesser General Public License (LGPL): The GPL has evolved into the
GNU Lesser General Public License (LGPL), designed to allow more flexible use in
both open-source and proprietary projects. The LGPL is primarily intended for
libraries and shared software components.
➢ The key features are:
➢ Lesser Copyleft: The LGPL enables developers to utilize LGPL-licensed
libraries in proprietary software by allowing linking with non-GPL-compatible
software.
➢ Source Code Availability: The LGPL demands, like the GPL, that the library's
source code be distributed or that a written promise to do so be made.

❖ Copyrights and Copy lefts:


➢ Copyright is a legal right that gives the creator of an original work, such as
software, music, or literature, exclusive ownership. It allows the copyright holder
to control how the work is used, distributed, and modified.
➢ Copyleft is a concept linked to certain open-source licenses, especially the GPL.
It ensures that any derivative works of copyleft-licensed software must also be
released under the same copyleft license. This approach helps maintain the open-
source nature of the software and encourages sharing improvements and
modifications within the community.

18
303105103 -- Open-Source Software

❖ Patent:
➢ Patents are exclusive rights granted to inventors or creators of innovations,
including software algorithms or methods. The issue of software patents can be
contentious within the open-source community
➢ Software patents, according to some, discourage innovation and result in court
cases over patent infringement.
➢ Patent holders are generally restricted from using their patents to challenge users
or developers of open-source software. To mitigate potential patent conflicts,
open-source projects often incorporate license provisions, such as patent grants
or licensing agreements.

19

You might also like