Top Banner

of 30

My Seminar (2).doc

Jun 02, 2018

Download

Documents

khsheth
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/10/2019 My Seminar (2).doc

    1/30

    The Open Source

    Software Model

  • 8/10/2019 My Seminar (2).doc

    2/30

    CERTIFICATE

    This is to certify that

    Mr. Sandesh Sawant

    has completed the necessary seminar work and prepared the bonafide report

    on

    THE OPEN SOURCE SOFTWARE MODEL

    in a satisfactory manner as partial fulfillment for requirement of the degree

    of

    B.E. (Computers)of

    Uniersity of !une in the

    Academic year "##"$"##%&

    'ate ( )th Aug "##"

    !lace ( !une

    !rof& !rof& *&!& !otdar !rof& 'r& C + , Rao

    Internal *uide -eminar Coordinator .&/&'&

    'E!ART0E1T /F C/0!UTER E1*I1EERI1*

    !U1E I1-TITUTE /F C/0!UTER TEC.1/2/*3

    !U1E 4 566#5%&

  • 8/10/2019 My Seminar (2).doc

    3/30

    AC,1/72E'*E0E1T-

    I take this opportunity to thank respected Prof. ,my seminar guide

    for his generous assistance& I am immensely grateful to our Hon. HOD Dr. C.V.K. Rao

    for his encouragement and guidance& I would like to e8press my sincere gratitude

    especially to the coordinator of seminars9 !rof& *&!& !otdar9 without whose guidance9

    support and motiation this seminar would not hae been possible& I e8tend my sincere

    thanks to our college library staffand all the staff !b!rsfor their aluable assistance&

    I am also thankful to all my fellow colleagues for their help and important suggestions&

    -andesh -awant

    :;&E 4 II

  • 8/10/2019 My Seminar (2).doc

    4/30

    INE!

    No. Top"c Pa#e

    6& Introduction 6

    "& 7hat is /pen -ource= "

    "&6 Common Industry +iew "

    "&" The Formal Framework %

    %& -ignificance of /pen -ource 0odel 5

    %&6 ;enefits and risks of /-- 0odel 5

    %&" The !ros and Cons of /-- 0odel >

    5& .ow /-- 0odel differs from proprietary -oftware 0odels ?

    5&6 /-' +s& Traditional 'eelopment process 6#

    5&" The Adantages of /-- 0odel oer !roprietary -oftware 66

    ) ,ey roles in /pen -ource 'eelopment 0odel 65

    @ The /pen -ource -oftware 2icense 6)

    > .ow /pen -ource companies make money 6@

    /pen -ource 'eelopment 0odel is not perfect= 6>

    ? A 2ook at already successful /-- !roBects 6

    6# A case study of /pen -ource -oftware( The *1U2inu8 /& -& "#

    6#&6 7hat is 2inu8= "#6#&" .ow is 2inu8 deeloped9 distributed9 and supported= "6

    66 Conclusion ")

    6" ;ibliography "@

  • 8/10/2019 My Seminar (2).doc

    5/30

    Introduct"on

    7eDe all heard a lot of talk about open source9 a software application

    deelopment paradigm that puts deelopment into the hands of a loosely defined

    community of programmers& 2inu8 in particular9 an open source operating system

    deeloped by 2inus Toralds in 6??69 seems to be the poster child for the moement&

    /pen source is nothing new to computing it has been the underpinning of the

    Internet for years& /pen source software is an idea whose time has finally come& For

    twenty years it has been building momentum in the technical cultures that built the

    Internet and the 7orld 7ide 7eb& 1ow its breaking out into the commercial world9 and

    thats changing all the rules&/pen -ource software puts a new marketing face on a long tradition of enterprise$

    class free software& Unlike closed source9 packaged applications9 when you use /pen

    -ource software9 you get the source code9 which you can modify to fit your needs& 3ou

    can incorporate /pen -ource code into commercial products without restriction& /pen

    -ource solutions are aailable for almost any conceiable application& -ome of the

    worlds largest companies9 as well as the Internet itself9 depend on /pen -ource for

    enterprise applications&

    The basic idea behind open source is ery simple( 7hen programmers can read9

    redistribute9 and modify the source code for a piece of software9 the software eoles&

    !eople improe it9 people adapt it9 people fi8 bugs& And this can happen at a speed that9 if

    one is used to the slow pace of conentional software deelopment9 seems astonishing&

    6

  • 8/10/2019 My Seminar (2).doc

    6/30

    $. %hat "s Open Source&

    $.' Common Pul"c "ew*

    /pen source has burst upon the software deelopment scene as the new paradigm of

    faster turnaround and more reliable software& 7ith the open source deelopment model9 a

    computer programDs source code is gien away freely along with the program itself& This

    allows any programmer to iew9 modify9 and redistribute the program& ;y allowing the

    outside world to adapt and propagate the source code9 the deelopment lifecycle is

    greatly reduced and the final product is much more stable and ersatile9 proponents

    adocate& The best thing about /pen source is that it propels innoation9 as users are free

    to tailor the software to suit their own needs and circulate those changes&

    0ost /pen -ource software is not deeloped by one single endor9 but by a distributed

    group of programmers& Typically9 open source software deelopment is guided by proBect

    maintainers who address technical or end$user requirements rather than endor agendas&

    1obody GownsH /pen -ource software9 which is freely aailable for download oer the

    Internet&

    Closed$source software is the kind that most people know best& For decades9

    software companies hae shipped their products on floppy disks and C'$R/0s& !eople

    can install and use those programs but cannot change them or fi8 them& The human$

    readable ersion of the software( the source code9 is Bealously guarded by the software

    maker& /ne may think that open$source software is less secure or less reliable than closed

    source& This isnt true& For e8ample9 it is now uniersally accepted in the computer

    industry that the open$source Apache 7eb serer is a much more secure alternatie to

    0icrosofts closed$source Internet Information -erer& /pen source lets engineers around

    the world e8amine the code for security flaws and other bugs&

    Unlike most commercial software9 the core code of such software can be easily

    studied by other programmers and improed upon$$the only proiso being that such

    improements must also be reealed publicly and distributed freely in a process that

    encourages continual innoation&

    "

  • 8/10/2019 My Seminar (2).doc

    7/30

    $.$ The formal framewor+*

    Open source9 by definition9 means that the source code is aailable& /pen sourcesoftware :/--< is software with its source code aailable that may be used9 copied9 and

    distributed with or without modifications9 and that may be offered either with or without

    a fee& If the end$user makes any alterations to the software9 he can either choose to keep

    those changes priate or return them to the community so that they can potentially be

    added to future releases& /pen -ource Initiatie :/-I

  • 8/10/2019 My Seminar (2).doc

    8/30

    . S"#n"f"cance of Open Source Software Model

    The open source deelopment process differs sharply from the traditionalcommercial off$the$shelf :C/T-< model& Eric Raymond likens the corporate or

    traditional C/T- model9 whereby a corporation produces and sells proprietary software9

    to a cathedral and the open source model to a baaar& In the corporate model9 indiiduals

    or small groups of indiiduals quietly and reerently deelop software in isolation9

    without releasing a beta ersion before it is deemed ready& In contrast9 the open source

    model relies on a network of GolunteerH programmers9 with differing styles and

    agendas9 who deelop and debug the code in parallel& From the submitted modifications9

    the delegated leader chooses whether or not to accept one of the modifications& If the

    leader thinks the modification will benefit many users9 he will choose the best code from

    all of the submittals and incorporate it into the /-- updates& The software is released

    early and often&

    .' Benef"ts and -"s+s of Open Source Software Compared to

    Trad"t"onal COTS (Commerc"al Offtheshelf)

    'ue to the different deelopment models9 !rogram 0anagers can achiee many

    benefits oer traditional C/T- by using /--& !opular open source products hae access

    to e8tensie technical e8pertise9 and this enables the software to achiee a high leel of

    efficiency9 using less lines of code than its C/T- counterparts& The rapid release rate of

    /-- distributes fi8es and patches quickly9 potentially an order of magnitude faster than

    those of commercial software& /-- is relatiely easy to manage because it often

    incorporates elements such as central administration and remote management& ;ecause

    the source code is publicly aailable9 !rogram 0anagers can hae the code tailored to

    meet their specific needs and tightly control system resources&

    5

  • 8/10/2019 My Seminar (2).doc

    9/30

    0oreoer9 !rogram 0anagers can re$use code written by others for similar tasks

    or purposes& This enables !rogram 0anagers to concentrate on deeloping the features

    unique to their current task9 instead of spending their effort on rethinking and re$writing

    code that has already been deeloped by others&

    Code re$use reduces deelopment time and proides predictable results& 7ith

    access to the source code9 the lifetime of /-- systems and their upgrades can be

    e8tended indefinitely& In contrast9 the lifetime of traditional C/T- systems and their

    upgrades cannot be e8tended if the endor does not share its code and either goes out of

    business9 raises its prices prohibitiely9 or reduces the quality of the software

    prohibitiely& The open source model builds open standards and achiees a high degree of

    interoperability& 7hile traditional C/T- typically depends on monopoly support with one

    company proiding support and Gholding all the cardsH :i&e&9 access to the code< for a

    piece of software9 the publicly aailable source code for /-- enables many endors to

    learn the platform and proide support& ;ecause /-- endors compete against one

    another to proide support9 the quality of support increases while the end$user cost of

    receiing the support decreases&

    /pen source can create support that lasts as long as there is demand9 een if one

    support endor goes out of business& For goernment acquisition purposes9 /-- adds

    potential as a second$source Gbargaining chipH to improe C/T- support& /-- can be a

    long$term iable solution with significant benefits9 but there are issues and risks to

    !rogram 0anagers& !oor code often results if the open source proBect is too small or fails

    to attract the interest of enough skilled deelopers thus9 !rogram 0anagers should make

    sure that the /-- community is large9 talented9 and well organied to offer a iable

    alternatie to C/T-& .ighly technical9 skilled deelopers tend to focus on the technical

    user at the e8pense of the non$technical user& As a result9 /-- tends to hae a relatiely

    weak graphical user interface :*UI< and fewer compatible applications9 making it more

    difficult to use and less practical9 in particular9 for desktop applications :although some

    /-- products are greatly improing in this area

  • 8/10/2019 My Seminar (2).doc

    10/30

    As new ersions of the /-- are released9 !rogram 0anagers need to make sure

    that the ersions to be integrated are compatible9 ensure that all deelopers are working

    with the proper ersion9 and keep track of changes made to the software&

    7ithout a formal corporate structure9 /-- faces a risk of fragmentation of the

    code base9 or code forking9 which transpires when multiple9 inconsistent ersions of the

    proBectDs code base eole& This can occur when deelopers try to create alternatie

    means for their code to play a more significant role than achieed in the base product&

    -ometimes fragmentation occurs for good reasons :e&g&9 if the maintainer is doing a poor

    Bob< and sometimes it occurs for bad reasons :e&g&9 a personality conflict between lead

    deelopers

  • 8/10/2019 My Seminar (2).doc

    11/30

    .$ The pros and cons of open source

    -ome of the benefits of /pen -ource software include high quality9 fle8ibility9 stable code9 cost saings

    and frequent incremental releases& 'isadantages include uncertain release schedules and dependence on

    the continued interest of a large community of olunteers& There are many unnoticed adantages of this

    model such as freedom to choose from different endors9 access across multi$endor

    enironments9 protection inestment in e8isting computer system9 ability to useshare

    information anywhere in the world and interoperabilityportability across arious

    platforms&

    The concept of open source software :/--< has become more than a mere blip on the

    radar screens of IT professionals& .oweer9 the question of whether open source is a

    iable9 cost$effectie system for deeloping software for actual business applications has

    yet to be answered&

    To be certified as /--9 deelopers must follow the /pen -ource 'efinition

    :www&opensource&orgosd

  • 8/10/2019 My Seminar (2).doc

    12/30

    er"0ed wor+s*0odifications and deried works are allowed and can be distributed

    under the same terms as the license of the original software&

    Inte#r"t1 of the author2s source code* -ource code can be restricted from

    distribution in modified form only if the license allows the distribution of KpatchfilesK with the source code for the purpose of modifying the program at build time&

    -oftware built from modified source code may be distributed but may be required to

    carry a different name or ersion number from the original software&

    "str"ut"on of l"cense*The rights attached to the program must apply to all users&

    1o additional licenses are needed&

    3"cense must not e spec"f"c to a product*The rights attached to the program must

    not depend on the program being part of a particular software distribution&

    3"cense must not contam"nate other software*1o restrictions should be placed on

    other software distributed with the licensed software& For e8ample9 all other programs

    distributed on the same medium need not be open source software&

    ;ecause of its wide$open management methods and unusual fee structures9 /--9 as a

    business model9 seems to fly in the face of conentional deelopment wisdom& According

    to the /pen -ource Initiatie9 the organiation that maintains the /pen -ource 'efinition9

    companies can make money with /-- using these four business models(

    Support sellers( Companies gie away the software product but sell distribution9

    branding9 and after$sale serice&

    3oss leader( Companies gie away open source as a loss leader to establish

    market position for closed software&

    %"d#et frost"n#( A hardware company goes open source to get better and cheaper

    driers and interface tools&

    4ccessor"es( Companies sell accessoriesJbooks9 compatible hardware9 and

    complete systemsJwith open source software pre$installed&

  • 8/10/2019 My Seminar (2).doc

    13/30

  • 8/10/2019 My Seminar (2).doc

    14/30

    The /pen -ource model unties the knot between the product endor and support

    serices& ;ecause source code is aailable to all9 endors are able to focus on a part of the

    alue chain and build competitie serices without fear of proprietary lockouts&

    The /pen -ource model unties the knot between the product endor and support

    serices& ;ecause source code is aailable to all9 endors are able to focus on a part of the

    alue chain and build competitie serices without fear of proprietary lock$outs&

    Therefore9 the best proider of shrink$wrapped 2inu8 products is the endor that best

    understands packaging9 distribution9 point$of$sale promotion9 and branding& The best

    proider of 2inu8 customer serices is the endor that specialies in serice9 building

    deep technical e8pertise and superior serice deliery systems& The bottom line is that the

    /pen -ource software deelopment model9 by creating$and protecting an open playing

    field9 encourages endor specialiation and fosters honest competition9 ultimately giing

    the customer more choice9 fle8ibility9 and control&

    5.' Open Source e0elopment 0s. Trad"t"onal Processes

    /nce the originator is ready to inite others into the proBect he makes the code

    base aailable to others and deelopment proceeds& Typically9 anyone may contribute

    towards the deelopment of the system9 but the originatorowner is free to decide which

    contributions may or may not become part of the official release& The open source

    deelopment :/-'< model is different from traditional in$house commercial

    deelopment processes in seeral fundamental ways& First9 the usual goal of an open

    source proBect is to create a system that is useful or interesting to those who are working

    on it9 not to fill a commercial oid&

    6#

  • 8/10/2019 My Seminar (2).doc

    15/30

    'eelopers are often unpaid olunteers9 who contribute towards the proBect as a

    hobby in return9 they receie peer recognition and whateer personal satisfaction their

    efforts bring to them& -ometimes this means that much of the effort on an /-' proBect

    concentrates on what part$time programmers find interesting9 rather than on what might

    be more essential& It can be difficult to direct deelopment toward particular goals9 since

    the proBect owner holds little power oer the contributing deelopers& This freedom also

    means that it can be difficult to conince deelopers to perform essential tasks9 such as

    systematic testing or code restructuring that are not as e8citing as writing new code&

    5.$. The ad0anta#es of Open Source software o0er propr"etar1 software

    L Sta"l"t1. /pen -ource software is often more reliable and stable than proprietary

    software& This is because /pen -ource proBects hae large numbers of contributors and

    follow an iteratie deelopment9 debugging9 and testing cycle& The best$known /pen

    -ource proBects such as 2inu8 hae more contributors and testers than a traditional

    software company could afford to deploy on a proBect&

    L Cost. /pen -ource software is free& This results in immediate saings on licensing feesand upgrading costs& And the larger the proBect9 the greater the saings$for e8ample9 there

    is no charge for additional client connections to an /pen -ource database&

    L Secur"t1. In the proprietary software model9 deelopers compete to discoer and e8ploit

    or publicie security holes& The /pen -ource peer reiew process redirects deeloper

    competition toward preenting security breaches in the first place& Additionally9 there are

    no hidden A!Is that can be e8ploited&

    66

  • 8/10/2019 My Seminar (2).doc

    16/30

    L /le7""l"t1. /pen -ource code can be modified to fit customer requirements& 'riers

    can be deeloped or modified without reerse$engineering unpublished A!Is& The best$

    known /pen -ource proBects such as 2inu8 hae more contributors and testers than a

    traditional software company could afford to deploy on a proBect&

    L Cho"ce of 0endors. In the /pen -ource model9 endors compete purely on the basis of

    their ability to add alue to a shared platform9 not on the basis of proprietary secrets&

    L -educed r"s+. The /pen -ource deelopment model effectiely spreads risks oer a

    large pool of programming talent& And it proides a hedge against obsolescence$for

    e8ample9 if a company that deelops /pen -ource software goes out of business9 the code

    could thereafter be maintained in perpetuity by other deelopers& Cisco -ystems recently

    decided to release print spooler software under an /pen -ource license to reduce its

    dependency on in$house programming staff&

    6"

  • 8/10/2019 My Seminar (2).doc

    17/30

    6%

  • 8/10/2019 My Seminar (2).doc

    18/30

    8. 9e1 roles "n Open Source de0elopment process

    To understand the /pen -ource software deelopment process it is important to

    acknowledge the roles of the arious participants who take part in creating the code&

    Pro:ect Ma"nta"ner;e0eloper

    L 'etermines the software license

    L 7rites the first code release and puts it up on the Internet

    L -ets up a 7eb site9 mailing lists9 and ersion control serices :e&g& +C-