Why Open Source Software by sparkunder25

VIEWS: 0 PAGES: 7

									Open Source Software -
    An Overview




           By
Ramamoorthy Makkithaya




                         1
Contents

Contents ......................................................................................................................... 2
Introduction................................................................................................................... 3
What is Open source software? .................................................................................... 3
Benefits .......................................................................................................................... 5
Challenges ..................................................................................................................... 5
Latest trend/Business in open source ........................................................................... 6
References ..................................................................................................................... 7




                                                                                                                                   2
Introduction
Traditionally software development happened within a company or in partnership
with other vendors. Proprietary software code is written and maintained by the owner.
It will not be available for the user who buys the software. Only binary code will be
made available to users as an installable version.

In proprietary software world, user will not be having control over the piece of
software or an application delivered by the vendor. These software come with huge
initial investment followed by the additional spending on the service to maintain those
applications. For fixing bugs which are part of initial deliverable, users need to spend
additional money. Companies which depend on these proprietary software need to
align their business plan with vendor deliverable. This in turn will lead to increase in
turn around time for offering new services to customer.

In few of the cases, proprietary software comes with user level licences. Licensing fee
need to be paid based on the number of users of an application. As the user base
grows or company branches increases, cost of software also increases. In few cases
proprietary software comes with feature based fee. Cost of an application will be very
high if a company plans to buy feature rich proprietary software. Both the cases,
setting up a new office or expanding the business will come with additional money to
be spent on these software.

Generally as the proprietary software development happens in a closed environment,
developers are not the users of it. Developers will be collecting the requirement for an
application from marketing people or from likely users of software. This means end
user will not be having direct involvement in influencing the shape of a software
application.

Below are few of the examples on costs of few of the proprietary software which are
widely used.

   -   Microsoft office standard edition CD costs around $399. Upgrade of the same
       from old version of office costs around $239
   -   Microsoft home basic Vista operating system costs around $175




What is Open source software?
Though often the terms Free Software and Open Source are used interchangeably,
open source software is not the same as free software. Open source software is free in
the sense ‘freedom’. It is freedom to run, copy, distribute, study, change and improve
the software depending on the software licenses on which the open source software is
distributed. First and one of the important features of open software is that it comes
with source code. Not just with the binaries.



                                                                                      3
One of the key features of the open source software is that end users will be the
developers. Basic idea of the software comes up because of the problems that one or a
group of users faced during their day to day work. Individual or a group of user come
together and start coding for a solution. In this way shape of software application is
more or less decided by the end users.

Once a user or a group of users come together and start writing code for an
application, it will be hosted in a public environment. Open source software is
developed and maintained in public environment where the users can get access to
various documentations, source code for an application and larger community for
various discussions. An end user who would like to contribute to success of an
application can involve himself/herself depending on the future roadmap for that
application. Hence this is a collaborative approach where individuals are working
together for the success of the software.

Once an open source software is of some shape, it will be hosted in a public
environment. A commercial company can be started which will host all source code,
documentation etc and sell services [For example moodle.org] It can also be hosted on
common environment like sourceforge.net .

Open source developers don't experience the pressures which is the common factor in
traditional proprietary software development environment. There will not be list of
pointless and distracting check-list features from the marketing teams. There will not
be management mandates to be taken care during the development. Additionally the
motivation factor for the project success will be high as the developers of these
projects are volunteers or solution finders.

As the definition and characteristics of open software varies, it leaves room for variety
of software licences. Below are few of the licenses which are widely used.

General public license [GPL] - The GNU GPL (General Public License), one of the
first open source licenses and still by far the most widely used. Under this license, one
can modify and redistribute the code. However any modification need to be
distributed again under the same licensing. There are different versions of GPL
license which are available now. Source code under this license can not be used in
closed projects. Linux is one of the widely used open source OS uses GPL license.

Mozilla Public Licence [MPL] – Under this license one need to make available the
modified code for particular duration. Modified code must remain available for at
least twelve (12) months after the date it initially became available, or at least six (6)
months after a subsequent version of that particular Modification has been made
available. Mozilla browser [Open source version of netscape browser] is one of the
application which is under MPL license.

Common Public Licence [CPL] – CPL was derived from IBM public license
[IPL].Under this license the code can be used in closed projects. Program that uses the
software can also be sold commercially. Eclipse is one of the application which was
covered under CPL earlier.




                                                                                        4
There are many open source licenses available now. Complete OSI agreed license list
is available at: http://www.opensource.org/licenses


Benefits
One of the key benefits of open source software is the flexibility it offers. Flexibility
in business context means ability to choose solutions suitable for end users in
changing environment. The user need not be locked in to specific software or specific
supplier. A user can move to different software without worrying much on the
licensing fee paid during the software purchase.

In open source software, flexibility also comes in as the flexibility to modify and
customise the code. As the original source code is available for read and modification,
one can modify the code to cater their specific need. One will not be struck with the
standardized features available like in proprietary software. There is a high scope for
customization to add new features which will enhance the services one can offer.

In general one plan for their business based on the roadmap available from the
proprietary software vendor. There would be lot of dependency on the business plan
over vendor roadmap. This is high risk when you consider that there is chance for any
slippage. In addition to that Software vendors can go out of business, and they can
arbitrarily decide to cease development of a product. This will add to the risk of
running and maintaining the business. However in contrast to this open source
software allows one to retain not just the right to use the software, but the ability to
continue to use it as needs change.

While using open source software, there will not be licensing fee one need to spend
for getting the binaries of an application. In addition there will be no per-copy fees
can be asked for modified versions of the software. This lead to lesser total cost of
ownership [TCO] when one uses open source software instead of proprietary
software.


Challenges

Along with many benefits of open source software, it comes with a number of risks
and challenges. While opting for open source software one need to understand these
challenges before taking any decision.

One of the obvious risks is potential liability for intellectual property infringement.
Typically open source software is collaborative approach. People from different
background and different places contribute to the development of an application. It is
very much impossible to audit the entire code base once we have contribution from
multiple people. This might lead to intellectual property infringement. There is a
chance that contributor might have introduced to infringing code. There is no
guarantee that one will be contributing clean code to a project. However this issue is
covered by most of open source licenses. The standard open source license is
designed to be very protective of the contributor.


                                                                                       5
Open source software comes with different licensing options. It is very critical to
understand terms of licensing before one plan to use it. Without the correct
understanding, there is a chance for legal complication of using open source software.
As per one study, there is increase in legal cases as the trend for open source software
usage is increasing. This is very disturbing.

One other challenge that one will be facing while adopting the open source software is
the IT capability of a company which is adopting it. Open source software comes with
free licensing. However for customizing or the proper usage of the software, company
need to have self supportive IT infrastructure. It would be very critical when a
security loophole is found in open source software. Unless until the company has its
own IT staff, it would be very difficult to fix that and use it in business.

There will not be one point of contact which one can rely on getting the critical fix on
time. There are no service level agreements agreed for supporting any critical failures
in software. This will add to the risk of running business using open source software.




Latest trend/Business in open source
As mentioned in earlier part, open source software binaries will be free of cost.
However there might be very minimal support available in terms of documents and
other ways. There is a huge scope for offering services over different open source
software available in the market. For example there are various companies which
offer support on different flavours of Linux. There are companies like red hat, Ubuntu
which have their own flavour of Linux and services offered on that. These companies
test the version of linux and offer service on the tested software. It is not just the OS
services. There are different companies offer services in terms of
installation,training,web hosting, administration of various open source software line
open office,Apache,Postgres,Subversion, Moodle etc.

As mentioned previously, there are several licences available in open source software.
Software licence like BSD license allows one to modify the open source software and
use it as commercialized/enhanced software. There is a chance that an open source
software is feature rich to make efficient use of it. Few of the companies picks up the
code base and modify the same to make sure it is feature rich. Then publish the same
as commercialized project.

In few cases initial basic version of the software is released as the open source
software to get the friendly environment. Later on the same will be enhanced and
more features are added to the software. Then it is released as the commercialized
software.

There are cases where proprietary software vendors will release their code as open
source software which is old and needs support in maintaining the code. Proprietary
software vendor need to spend additional money on maintaining the code base of it.
For software which is old and loosing its business it would not be cost effective for
the vendor to maintain. Instead of leaving users in lurch, this would be a good idea to


                                                                                       6
make it open source. Netscape is one of the software which was released as open
source software. Recently Cisco released one of its applications called Cisco Trust
Agent as open source software.

References
   1.   Main web page for open source initiative - http://www.opensource.org/
   2.   Largest open source development web site - http://www.opensource.org/
   3.   OSI approved licenses - http://www.opensource.org/licenses
   4.   Open source testing tools - http:\\www.opensourcetesting.org




                                                                                 7

								
To top