OST Module 2 QA
OST Module 2 QA
OST - Module 2
1 Mark Questions:
1. What is open source software development?
Open source software development is the process by which open source software, or similar
software whose source is publicly available, is developed by an open source software project.
4. What is License?
Licence is a permission or right granted to engage in some act without which the act might be
otherwise unlawful. The term license also refers to the document that specifically describes the
permissions and rights.
5. Define copyright.
Copyright is a legal concept enacted by most national governments that gives the creator of an
original work exclusive rights to it, usually for a limited period of time. At its most general, it is
literally the right to copy, but also gives the copyright holder the right to be credited for the work to
determine who can perform it or adopt it. To other forms to benefit financially from the work and
other related rights.
A copyright is a type of intellectual property that gives its owner the exclusive right to copy,
distribute, adapt, display, and perform a creative work, usually for a limited time.
Copyright is the right that enable you to prevent unauthorized copying or selling of your work.
Copy left is a play on the world copyright and is the practice of using copyright law to remove
restrictions on distributing copies and modified versions of a work for others and requiring that the
same freedoms be preserved in modified versions.
Copy left is a form of licensing and may be used to modify copyrights for work such as computer
software, documents, music and art. Unlike copyright, an author may through a copyleft licensing
scheme, give every person who receives a copy of a work permission to reproduce adapt or distribute
the work as long as the same copyleft Licensing scheme binds any resulting copies or adaptations.
Copyleft is a method using which you can modify the software or documentation and distribute it
back to the open-source community.
7. Define Patent.
A patent is a set of exclusive rights granted by a state to an inventor or his assignee for a fixed
period of time in exchange for disclosure of an invention.
3 Mark questions:
1. Write a note on Open source software development.
Open source software development is the process by which open source software, or similar
software which source code is publicly available, is developed. These are software products
available with its source code and under the open source licence to study, change and improve its
design. Examples of popular open source software products are Mozilla Firefox and the
OpenOffice.org suite. The open source software development method is very unstructured because
no clear development tools, faces, EC have been defined like with development methods.
Models
Agile | cleanroom | iterative | RAD | RUP | spiral | waterfall | XP | scrum
Supporting disciplines
Configuration management | documentation | software quality assurance (SQA) | project
management | user experience design
2. Write the process data model for open source software development
Open-source software development Model:
Open-source software development can be divided into several phases. A diagram displaying the process-
data structure of open-source software development is shown on the right. In this picture, the phases of
open-source software development are displayed, along with the corresponding data elements. This diagram
is made using the meta-modeling and meta-process modeling techniques.
Starting an open-source project: There are several ways in which work on an open-source project can start:
An individual who senses the need for a project announces the intent to develop a project in public.
A developer working on a limited but working code base, releases it to the public as the first version of an
open-source program.
The source code of a mature project is released to the public.
A well-established open-source project can be forked by an interested outside party.
BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2
It’s a common mistake to start a project when contributing to an existing similar project would be more
effective. To start a successful project it is very important to investigate what’s already there. The process
starts with a choice between the adopting of an existing project, or the starting of a new project. If new
project is started, the process goes to the Initiation phase. If an existing project is adopted, the process goes
directly to the Execution phase.
Participants in OSS development projects fall into 2 broad categories, the core and the peripheral.
The core, or inner circle, are developers who modify the primary code that constitutes the project.
The peripheral usually consists of users of the software. They report bugs, submit fixes and suggest
changes.
The participants can be divided into the following.
Project leaders who have the overall responsibility(core). Most of them might have been
involved in coding the first release of the software. They control the overall direction of
individual projects.
Volunteer developers (core or periphery), who do actual coding for the project. These
include.
Senior members with broader overall authority.
Peripheral developers producing and submitting code fixes.
Occasional contributors.
Maintainers who work on different aspects of the project.
Everyday users (periphery) who perform testing, identify bugs, deliver bug reports etc.
Posters (periphery) who participate frequently in news groups and discussions but do not do
any coding.
Projects often exhibit an early geographical trend, even if there is intentional interest. For example,
most of the core founders of the KDE development environment were German. Edit this.
6. List and explain the tools used for open source development.
The tools used for open source developmemt are,
Communication channels.
Software engineering tools
Testing tools
Package management
Automated tests
Communication channels – developers and users of an open source project are not all necessarily
working on the project in proximity. They require some electronic means of communications. Email is
one of the most common forms of communication among open source developers and users. Open
electronic mailing lists are used to make sure. Email messages are delivered to all interested parties at
once. This ensures that at least one of the Members can reply to it. In order to communicate in real time.
Many projects use an instant messaging method. Web forums have recently become a common way for
users to get help with problems they encounter when using an open source product. Wikis have become
common as a communication medium for developers and users.
Software engineering tools.
Version control systems.
In OSS development, the participants, who are mostly volunteers, are distributed amongst different
geographic regions, so there is need for tools to aid participants to collaborate in the development of
source code.
Concurrent net versions system CVS is a prominent example of the source code collaboration tool being
used in OSS projects. CVS helps manage the files and codes of the project when several people are
working on the project at the same time. CVS allows several people to work on the same file at the
same time. This is done by moving the file into the users directories and then merging the files when
the users are done. CVS also enables one to easily retrieve a previous version of the file.
The subversion revision control system SVN was created to replace CVS. It is quickly gaining ground
as an OSS project version control system.
BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2
Testing tools
Since OSS projects undergo frequent integration, tools that help automate testing during system
integration are used. An example of such tool is tinderbox. Tinderbox enables participants in an OSS
project to detect errors during system integration. Tinderbox runs a continuous build process and
informs users about the part of source code that have issues. And on which platforms these issue arise.
Furthermore, this tool identifies the author of the offending code. The author is then held responsible
for ensuring that error is resolved. Mainly because normal testing tools are quite expensive, open source
testing tools are gaining popularity.
A debugger is a computer program that is used to debug other programs. Gnu Debugger is an example
of the debugger used in open source software development.
A memory leak tool or memory debugger is a programming tool for finding memory leaks and buffer
overflows. Validation tools are used to check if pieces of code confirm to a specified syntax. An
example of a validation tool is LCLint, now called Splint.
Package management.
A package management system is a collection of tools to automate the process of installing, upgrading,
configuring, and removing software packages from the computer. The Red Hat package manager RPM
for .rpm and advanced packaging tool APT for .deb file format are package management systems used
by the number of Linux distributions.
Automated tests.
Software testing is an integral part of open source development. While many open source packages
were known to be released with some glaring bugs even in some stable releases, most open source
software eventually become very stable. Most open source software is either command line or
alternatively APIs and as such as very easy to test automatically.
LGPL-ed software- it can be used to build proprietary programs, otherwise Linux would only be
useful for free software authors.
An instance of an LGPL-ed program can be converted into a GPL-ed one at any time. Once that
happens, you can't convert that instance, or anything derived from it, back into an LGPL-ed
program.
The rest of the provisions of the LGPL are similar to those in the GPL—in fact, it includes the
GPL by reference.
The X, BSD and Apache licenses. The X license and its relatives the BSD and Apache licenses
are very different from the GPL and LGPL. These licenses let you do nearly anything with the
software licensed under them. This is because the software that the X and BSD licenses originally
covered was funded by monetary grants of the U.S. Government. Since the U.S. citizens had
already paid for the software with their taxes, they were granted permission to make use of that
software as they pleased.
The most important permission, and one missing from the GPL, is that you can take X-licensed
modifications private. In other words, you can get the source code for a X-licensed program,
modify it, and then sell binary versions of the program without distributing the source code of
your modifications, and without applying the X-license to those modifications. This is still Open
Source, however, as the Open Source Definition does not require that modifications always carry
the original license.
The Artistic License
Although this license was originally developed for Perl, it's since been used for other software. It
is, in my opinion, a sloppily-worded license, in that it makes requirements and then gives you
loopholes that make it easy to bypass the requirements. Perhaps that's why almost all Artistic-
license software is now dual- licensed, offering the choice of the Artistic License or the GPL.
Section 5 of the Artistic License prohibits sale of the software, yet allows an aggregate software
distribution of more than one program to be sold. So, if you bundle an Artistic-licensed program
with a five-line hello-world's, you can sell the bundle. This feature of the Artistic License was the
sole cause of the "aggregate" loophole in paragraph 1 of the Open Source Definition. As use of the
Artistic License wanes, we are considering removing the loophole. That would make the Artistic a
non-Open source license. This isn't a step we would take lightly, and there will probably be more
than a year of consideration and debate before it happens.
The Netscape public licence and the Mozilla public licence. Netscape developed NPL when
they made their product Netscape Navigator Open Source. Actually, the Open source version is
called Mozilla; Netscape reserves the trademark Navigator for their own product. Eric Raymond
and I acted as unpaid consultants during the development of this license. I tried, unsuccessfully, to
persuade Netscape to use the GPL, and when they declined, I helped them compose a license that
would comply with the Open Source Definition.
An important feature of the NPL is that it contains special privileges that apply to Netscape and
nobody else. It gives Netscape the privilege of relicensing modifications that you've made to their
software. They can take those modifications private, improve them, and refuse to give you the
result. This provision was necessary because when Netscape decided to go Open Source, it had
contracts with other companies that committed it to provide Navigator to them under a non-Open
source license. Netscape created the MPL, or Mozilla Public License, to address this concern. The
MPL is much like the NPL, but does not contain the clause that allows Netscape to re-license your
modifications.
The NPL and MPL allow you to take modifications private.
A patent is not a right to practice or use the invention. Rather, a patent provides the right to exclude
others from making, using, selling, offering for sale, or importing the patented invention for the
term of the patent, which is usually 20 years from the filing date. A patent is, in effect, a limited
property right that the government offers to inventors in exchange for their agreement to share the
details of their inventions with the public. Like any other property right, it may be sold, licensed,
mortgaged, assigned or transferred, given away, or simply abandoned.
2. Enforcement
Patents can generally only be enforced through civil lawsuits (for example, for a US patent, by an
action for patent infringement in a United States federal court), although some territories (such as
France and Austria) have criminal penalties for wanton infringement. Typically, the patent owner
will seek monetary compensation for past infringement, and will seek an injunction prohibiting the
defendant from engaging in future acts of infringement. In order to prove infringement, the patent
owner must establish that the accused infringer practices all of the requirements of at least one of
the claims of the patent (noting that in many jurisdictions the scope of the patent may not be limited
to what is literally stated in the claims, for example due to the "doctrine of equivalents").
An important limitation on the ability of a patent owner to successfully assert the patent in civil
litigation is the accused infringer's right to challenge the validity of that patent. Civil courts hearing
patent cases can and often do declare patents invalid.
3. Ownership
In most countries, both natural persons and corporate entities may apply for a patent. The entity or
entities then become the owners of the patent when and if it issues. However, it is nearly always
required that the inventor or inventors be named and an indication be given on the public record as
to how the owner or owners acquired their rights to the invention from the inventor or inventors.
4. Governing Laws
The grant and enforcement of patents are governed by national laws, and also by international
treaties, where those treaties have been given effect in national laws. Patents are, therefore,
territorial in nature.
Commonly, a nation forms a patent office with responsibility for operating that nation's patent
system, within the relevant patent laws. The patent office generally has responsibility for the grant
of patents, with infringement being the remit of national courts.
5. Application
A patent is requested by filing a written application at the relevant patent office. The application
contains a description of how to make and use the invention and, under some legislations, if not self
evident, the usefulness of the invention. The patent application may or must also comprise "claims".
Claims define the invention and embodiments for which the applicant wants patent rights.
To obtain a patent, an applicant must provide a written description of the invention in sufficient
detail for a person skilled in the art (i.e., the relevant area of technology) to make and use the
invention. This written description is provided in what is known as the patent specification, which
is often accompanied by illustrating drawings. Some countries, such as the United States, further
require that the specification disclose the "best mode" of the invention (ie., the most effective way,
to the best of the inventor's knowledge, to make or practice the invention).
6. Economics
I. Rationale
There are four primary incentives embodied in the patent system: to invent in the first place; to
disclose the invention once made; to invest the sums necessary to experiment, produce and market
the invention; and to design around and improve upon earlier patents.
II. Criticism
While each of the four incentives is achieved by the patent system in some contexts, the patent
system has countervailing costs, and those costs fall more heavily in some contexts than others.
There are many critics and criticisms of patents and this has resulted in the formation of a large
number of groups who oppose patents in general, or specific types of patents, and who lobby for
their abolishment.
software products 'available with its source code and under an open source license to study,
change, and improve its design". Examples of popular Open source software product are Mozilla
Firefox and the OpenOffice.org Suite. The Open source software development method is very
unstructured, because no clear development tools, phases, etc., have been defined like with
development methods such as DSDM. A license is the permission or right granted to engage in
some act without which the act might be otherwise unlawful. A person, institution, must grant a
license or government that has the legal authority to do so. The term "license" also refers to the
document that specifically describes these permissions and rights. Copyleft is a play on the word
copyright and is the practice of using copyright law to remove restrictions on distributing copies
and modified versions of a work for others and requiring that the same freedoms be preserved in
modified versions.