0% found this document useful (0 votes)
29 views23 pages

OST Module 2 QA

Uploaded by

jyothika12k
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)
29 views23 pages

OST Module 2 QA

Uploaded by

jyothika12k
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/ 23

II BCA-OST-MODULE 2

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.

2. List any four participants in OSS Development projects


 Project leader
 Volunteer developers (senior members, peripheral developers, occasional contributors,
maintainers)
 everyday users
 Posters.

3. Draw a neat diagram of open source community.

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.

6. What is Copy left?

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

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.

8. Expand GPL and LGPL.


 GPL - General public licence.
 LGPL – Lesser/Library General public license.

9. Expand BSD and ASF


 BSD – Berkeley software distribution.
 ASF – Apache software foundation.

10.What is bug tracker?


Bug tracking is the process of logging and monitoring bugs or errors during software testing. It is also
referred to as defect tracking or issue tracking. Large systems may have hundreds or thousands of defects.
Each needs to be evaluated, monitored and prioritized for debugging. The system used for bug tracking is
known as bug tracker.

11.Write any two types of open source projects.


Distributions
Software programs and libraries
BSD derivatives
Standalone document project

12.Write any two ways of starting an open source project.


 An individual who senses the need for the project announces the intent to develop the project in
public. The individual may receive offers to help from others. The group may then proceed to
work on the code.
 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 developer continues to work on improving it and possibly
is joined by other developers.
 The source code of a mature project is released to the public after being developed as proprietary
software or inhouse software.
 A well established open source project can be forked by an interested outside party. Several
developers can then start a new project whose source code then diverges from the original.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

13.Write any two tools used for open source development.


 Communication channels.
 Software engineering tools
 Testing tools
 Package management
 Automated tests

14.Expand CVS and SVN.


 CVS – Concurrent Versions System
 SVN – Subversion Revision Control System

15.List any four common licensing practices of open source.


 Public domain.
 Free software licenses in general.
 The GNU General Public License.
 The GNU Library General public licence.
 The X, BSD and Apache licenses.
 The artistic licence.
 The Netscape public licence and the Mozilla Public license.

16.Expand NPL and MPL.


 NPL – Netscape public licence.
 MPL – Mozilla public license.

17.Write any two decisions for choosing a license.


 Do you want people to be able to take modifications, private or not?
 Do you want to allow someone to merge your programme with his or her own proprietary
software?
 Do you want some people to be able to buy commercial licensed versions of your programme that
are not open source?
 Do you want everyone who uses your programme to pay for the privilege?

18.List any four exclusive right attached to the holder of copyright.


Several exclusive rights typically attached to the holder of a copyright.
 To produce copies or reproductions of the work, and to sell those copies, including typically
electronic copies.
 To import or export the work.
 To create derivative works.
 To perform or display the work publicly.
 To sell or assign these rights to others.
 To transmit or display by radio or video.

19.Expand SQA and FDL.


 SQA – Software quality assurance.
 FDL – free documentation licence.
BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2

20.Expand GDB and OSI.


 GDB – GNU Debugger
 OSI – Open source initiative.

21.Expand RPM and APT.


 RPM – Red Hat Package Manager
 APT – Advanced Packaging Tool

22.List any four law of patent.


 Effects
 Enforcement
 Ownership
 Governing laws
 Application
 Economics

23.Expand WTO and EPC.


 WTO – World Trade Organization.
 EPC – European patent convention.

24.List the different paradigm of software engineering methodology.


 The life cycle paradigm.
 The prototyping paradigm.
 The spiral model paradigm.

25.List any four bug tracker.


 Bugzilla
 Mantis
 GNATS(The GNU bug tracking system)
 SourceForge
 LibreSource
 Trac
 Request tracker

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.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

Software development process

Activities and steps


Requirements | architecture | design | implementation | testing | deployment

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.

3. Explain the different types of open source projects


One can distinguish several different types of open source projects. First there are many varieties of
software programs and libraries. They are standalone pieces of code. Some might even be dependent
on other open source projects. These projects serve a specified purpose and fill a definite need.
Examples of this type of project include the Linux kernel, the Firefox Web browser, and the
openoffice.org office suite of tools.
Distributions are another type of open source project. Distributions are collection of software that
are published from the same source with a common purpose. The most prominent example of the
distribution is an operating system. There are a large number of Linux distributions such as. Debian,
fedora core. Mandriva, Slackware etc. which ship the Linux kernel along with many user land
components. There are also other distributions like ActivePerl, the Perl programming language for
various operating system, and even the openCD and Cygwin distributions of open source programs
for Microsoft Windows.
Other open source projects, like the BSD derivatives, maintain the source code of an entire operating
system, the kernel, and all its core components in one revision control system, developing the entire
system to gather as a single team. These operating system development projects closely integrate
their tools, more so than in the other distribution based systems.
Finally, there is a book or standalone document project. These items usually do not shift as part of
an open source software package. The Linux Documentation project hosts many such projects that
document various aspects of the GNU or Linux operating system. There are many other examples
of this type of open source project.

4. How to start an open source project? Explain.


There are several ways in which work on an Open source project can start.
 An individual who senses the need for the project announces the intent to develop the project in
public. The individual may receive offers to help from others. The group may then proceed to work
on the code.
 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 developer continues to work on improving it and possibly is joined
by other developers.
 The source code of a mature project is released to the public after being developed as proprietary
software or inhouse software.
 A well established open source project can be forked by an interested outside party. Several
developers can then start a new project whose source code then diverges from the original.
Eric Raymond observed in his famous essay “The Cathedral and the bazaar” that announcing the intent
for a project is usually inferior to releasing a working project to the public. It’s a common mistake to
start an own project when contributing to an existing similar project. Should be more effective to start
a successful project. It is very important to investigate what’s already there.

5. Write a note on participants in OSS Development Projects.


BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2

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.

7. Write a note on some common licensing practices.


Public domain – The public domain programme is one upon which the author has deliberately
surrendered his copyright rights. It can’t really be set to come with the licence, it’s your personal
property to use as you see fit. U can easily take a public domain programme private by declaring a
copyright and applying your own license to it or simply declaring All rights reserved.
Free software licenses in general - If you have a free software collection like a Linux disk, you
may believe the programs on that disk are your property. That's not entirely true. Copyrighted
programs are the property of the copyright holder, even when they have an Open Source license
like the GPL. The program's license grants you some rights, and you have other rights under the
definition of fair use in copyright law.
It's important to note that an author does not have to issue a program with just one license. You
can GPL a program, and also sell a version of the same program with a commercial, non-Open
source license. Many people who want to make a program Open Source and still make some
money from it use this exact strategy. Those who do not want an Open Source license may pay for
the privilege, providing a revenue stream for the author.
The GNU General Public License. The GPL is a political manifesto as well as a software
license, and much of its text is concerned with explaining the rationale behind the license. This
political dialogue has put some people off, and thus provided some of the reason that people have
written other free software licenses. However, the GPL was assembled with the assistance of law
professors, and is much better written than most of its ilk. I'd strongly urge that you use the GPL,
or its library variant the LGPL, if you can. If you choose another license, or write your own.
The GNU Library General public licence. The LGPL is a derivative of the GPL that was
designed for software libraries. Unlike the GPL, an LGPL-ed program can be incorporated into a
proprietary program. The C-language library provided with Linux systems is an example of
BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2

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.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

8. Explain GPL/ LGPL/Apache license/BSD License.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

9. What is Copyright? Explain.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

10. What is Copy left? Explain

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

11. Define Patent. Write a note on it.


A patent is an exclusive rights granted by the state of an inventor or his assignee for a fixed period
of time in exchange for a disclosure of an invention.
The procedure for granting patents, the requirements placed on the patentee and the extent of the
exclusive rights vary widely between countries according to national laws and international
agreements. Typically, however, a patent application must include one or more claims defining the
invention which must be new, inventive, and useful or industrially applicable. The exclusive rights
granted to the patentee in most countries is the right to prevent or exclude others from making,
using, selling, offering to sell or importing the invention.
The term patent usually refers to a right granted to anyone who invents or discovers any new and
useful process, machine, article of manufacture, or composition of matter, or any new and useful
improvement thereof. The additional qualification utility patents is used in countries such as United
States to distinguish them for other types of patents but should not be confused with utility models
granted by other countries. Examples of particular species of patents for inventions include
biological patents, business method patents, chemical patents and software patents.

12. Write a note on patent law.


1. Effects

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

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

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

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.

13. Write a note on bug trackers and task lists.

14. Write a note on software engineering methodology.


Given unlimited resources, the majority of software problems can probably be solved but the
challenge for the software engineers is to produce high quality software with a finite amount of
resources and to a predicted schedule.
I. The Life-Cycle Paradigm
The life-cycle paradigm of software engineering is sometimes called the "waterfall model", as it
demands a sequential approach to the development process. The work is started at the system level
and passes through phases of analysis, design, coding, testing and maintenance. Six activities
constitute the overall development process.
II. The Prototyping Paradigm
Contrary to the static, procedural approach offered by the life-cycle paradigm, the prototyping
paradigm can be used. Similarly to the life-cycle paradigm, this process begins by gathering
requirements of the system. The developers meet with customers, determine the overall objectives
of the software and identify any known requirements. A quick design then occurs, focusing on
areas visible to the users, such as user interface and basic functionality.
III. The Spiral Model Paradigm
In addition to some of the aspects of the life-cycle and prototyping paradigms, the spiral model
adds an element of risk analysis to the development process. Open Source Methodology: One of
the buzzwords of the movement in the field of computer programming is the concept of "open
source" software and computing. Open source software development is the process by which open
source software (or similar software whose source is publicly hi available) is developed. These are
BY: CHAITHRA KOPPALA
II BCA-OST-MODULE 2

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.

15. Write a note on choosing a license.

BY: CHAITHRA KOPPALA


II BCA-OST-MODULE 2

Some important licenses are


 Apache license
 BSD license
 GPL or GNU
 LGPL

BY: CHAITHRA KOPPALA

You might also like