University of Limerick1 Software Applications u Aspects of software and the internet.

Slides:



Advertisements
Similar presentations
The Web Wizards Guide to Freeware/Shareware Chapter Six Open Source Software.
Advertisements

Free Beer and Free Speech Thomas Krichel
OPEN SOURCE MOVEMENT: IS IT AN ALTERNATIVE TO COPYRIGHT?
A Lawyer Looks at the Open Source Revolution Robert W. Gomulkiewicz Director, Intellectual Property Law & Policy Program Associate Professor of Law University.
Open Source and the Bazaar Method. History of Software Development 1944, Harvard and IBM build first computer bundling Hardware and Software together.
Copyleft and cathedrals How the counterculture is changing the way we do business.
Linux vs. Windows. Linux  Linux was originally built by Linus Torvalds at the University of Helsinki in  Linux is a Unix-like, Kernal-based, fully.
Open Source Applications Mikko Mustalampi DAP02S.
IS Spring The Basics of Open Source Reinhardi A. Haqi Mohamed Umar Shakeel Advanced Topics for Systems Development.
Computers in Society The Computer Industry: Open Source.
CMPTR1 CHAPTER 3 COMPUTER SOFTWARE Application Software – The programs/software/apps that we run to do things like word processing, web browsing, and games.
Open Source/Free Software Source code is available Extensible Can be changed, modified Freely distributed Copies Modified versions Alternatives to commercial/proprietary.
VT-NTUG | Jim Hall Building the Bazaar Open Source Software Development.
Open Source WGISS 39. Definition of Open Source Software (OSS)  Open source or open source software (OSS) is any computer software distributed under.
Open-Source Software ISYS 475.
Prepared by: Noor Azimah Hassan, ICT Dept. CFSIIUM.
COMP 6005 An Introduction To Computing Session Two: Computer Software Acquiring Software.
OPEN-SOURCE SOFTWARE BY: SAMANTHA HERALD  Otherwise known as OSS, is computer software that is available with source code: normally reserved for copyright.
Sl.NoUnitContents 1.Unit - 1 What is Open Source?, Why Open Source? 2Unit – 2 What is Open Standard? - Why Open Standards? 3Unit – 3 Peek into history.
CHAPTER 6 OPEN SOURCE SOFTWARE AND FREE SOFTWARE
Open Source Software Development (Adapted from Dr. Kostadin Damevski) Sung Hee Park Department of Mathematics and Computer Science Virginia State University.
Open Source Software Development. Overview  OSS  OSSD  OSSD vs PSD  Future.
FIS 1311: October Review November 7, Outline Software development processes Standards and XML (RSS) UML use Cases Databases & ERD.
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
Is Open Source Software a viable option for private and public organizations? Anthony W. Hamann Tuesday, March 21, 2006.
Licenses A Legal Necessity Copyright © 2015 – Curt Hill.
IBM Governmental Programs Open Computing, Open Standards and Open Source Recommendation for Governments.
Programming and Application Packages
Computers and Society Examine the extent to which Richard Stallman’s GNU manifesto has succeeded in challenging the dominance of conventionally distributed.
Open Source Software An Introduction. The Creation of Software l As you know, programmers create the software that we use l What you may not understand.
How I learned to stop worrying and love Open Source Software... Colin M. Sharples Advisory IT Specialist IBM Business Consulting Services SQNZ 21 October.
Introduction to Open Source Imed Hammouda, adjunct professor Tampere University of Technology
Presented By: Avijit Gupta V. SaiSantosh.
Software Engineering CS3003
Section 2 Software.
Open Source Software Bangladesh University of Business and Technology Nizar Saadi Dahir M.Sc. Computer Engineering Computer Center- Kufa University
OPEN SOURCE AND FREE SOFTWARE. What is open source software? What is free software? What is the difference between the two? How the two differs from shareware?
IS1825 Multimedia Development for Internet Applications Lecture 09: Free and Open Source Software Rob Gleasure
UEC 01 : Computer Skills & Programming Concepts I 1PUA – Computer Engineering Department – UEC01 – Dr. Mona Abou - Of Lecture 6: Applications Software.
Group 6 Will Culberson and Ben Henley. What is open source? Open source software is similar in meaning to freeware or shareware. Open source software.
Open Source Software In the beginning, all software was free –in the 1960s,when IBM and others sold the first large-scale computers, these machines came.
Open Source The Future of Software What’s Open Source Open-source software is computer software whose source code is available under a copyright license.
Software and Hardware Interaction
Maintainability of FLOSS Projects
CPS 82, Fall Open Source, Copyright, Copyleft.
NBA 600: Session 17 Free and Open Source Software 25 March 2003 Daniel Huttenlocher.
Chapter 14 The Open Source Community. Agenda Types of Free Software Open Source Project Open Hardware Project Impacts.
Introduction After seeing the pressure of license and proprietary software users where a lot of money is needed to make sure the software is in good condition,
Chapter 3 Software. Learning Objectives Upon successful completion of this chapter, you will be able to: Define the term software Describe the two primary.
Open Source Software Architecture and Design By John Rouda.
OPEN-SOURCE SOFTWARE BY: SAMANTHA HERALD  Otherwise known as OSS, is computer software that is available with source code: normally reserved for copyright.
Open Source Examples – Linux; Apache; Firefox Requirements – Distributed w/ source code – License allows for modifications (GPL) – License remains w/ any.
C2 Applications Software Getting the Work Done Solve a particular problem or perform a particular task.
Apache Web Server Architecture Chaitanya Kulkarni MSCS rd April /23/20081Apache Web Server Architecture.
Open Source Software. Chris Moylan Group 5...I think.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
INTRO. To I.T Razan N. AlShihabi
Advantages and Disadvantages of Open source Software
OPEN SOURCE.
open source and free software Najeeb Ullah Student ID
FREE AND OPEN SOURCE SOFTWARE IN EDUCATION
OPEN SOURCE.
LINUX WINDOWS Vs..
What is Copyright?.
OPEN SOURCE BY :.
LINUX WINDOWS Vs..
Open Source Business Models
Chapter 2: The Linux System Part 1
Open Source Software Development Processes
Presentation transcript:

University of Limerick1 Software Applications u Aspects of software and the internet

University of Limerick2 Software Products u Shareware: Software that can be be installed and evaluated for some fixed trial period at no charge but that requires a registration fee when the trial period ends. u Nagware: Shareware that continues to launch after the free trial period is over, but with reminders that it’s time to register. u Freeware: Software that is distributed free of charge.

University of Limerick3 Software Products u Open Source Software: Software whose code is willingly shared publicly so that other programmers can offer their own improvements. u Open Source software includes application software and even operating systems

University of Limerick4 Open Source vs Proprietary Software vs Freeware u Source Code - software product in its original form, usually in a high level language like Java u Executable Code - a translated version of the source code in the form the machine language of the computer processor u Compiler - program that converts source code to executable code

University of Limerick5 Open Source vs Proprietary Software vs Freeware u Open Source products are not necessarily free (but many are), but they are copylefted u Copyleft - intellectual property that is freely available for use, modification, and redistribution, as long as the modified product is also freely available u A license is required to make modifications, however u The source code must be made available

University of Limerick6 Open Source vs Proprietary Software vs Freeware u Freeware includes only the executable code u Some free-libre/open source software (FLOSS) for Macs and PCs: –Audacity (audio editor) –Thunderbird ( client) –Juice (Internet radio) –Democracy Player (Internet TV) –Open Office (productivity software) –Firefox (web browser)

University of Limerick7 Open Source vs Proprietary Software vs Freeware u FLOSS products are typically developed by large groups of loosely organized developers (the true believers!) u Dynamic - upgrades appear frequently u Users are encouraged to contribute via bug reports, general comments, feature requests - that’s why they’re often free u Alpha –Avoid alpha versions (the first release) u beta –Be wary of beta versions (subsequent releases, may be buggy)

University of Limerick8 Open Source u Open source can also be viewed as a set of principles and practices that promote access to the design and production of goods and knowledge.

University of Limerick9 Free software movement u The free software movement was launched in u In 1998, a group of individuals advocated that the term free software be replaced by open source software (OSS) as an expression which is less ambiguous and more comfortable for the corporate world u Software developers may want to publish their software with an open source software license, so that anybody may also develop the same software or understand how it works

University of Limerick10 Open Source (Wikipedia) u Open source software generally allows anybody to make a new version of the software, port it to new operating systems and processor architectures, share it with others or market it u The aim of open source is to let the product be more understandable, modifiable, duplicatable, reliable or simply accessible, while it is still marketable.

University of Limerick11 Community u Website –Usually.org –FAQ –Wiki –A bug tracking system, often Bugzilla u Lists –Where the users are u CVS, SVN, or other code tracking repository u IRC channel –Where the developers are u Foundation

University of Limerick12 CVS u In the field of software development, the Concurrent Versions System (CVS), also known as the Concurrent Versioning System, provides a version control system based on open-source code u Version control system software keeps track of all work and all changes in a set of files, and allows several developers (potentially widely separated in space and/or time) to collaborate u Dick Grune developed CVS in the 1980s. –

University of Limerick13 Bugzilla u Bugzilla is a Web-based general-purpose bugtracker tool u Originally developed and used by the Mozilla project, and licensed under the Mozilla Public License u Released as open source software by Netscape Communications in 1998, it has been adopted by a variety of organizations for use as a defect tracker for both free software and proprietary products.

University of Limerick14 Open Source (Wikipedia) u The Open Source Definition, notably, presents an open-source philosophy, and further defines a boundary on the usage, modification and redistribution of open-source software u Software licenses grant rights to users which would otherwise be prohibited by copyright u These include rights on usage, modification and redistribution. Several open-source software licenses have qualified within the boundary of the Open Source Definition u The most prominent example is the popular GNU General Public License (GPL) u While open source presents a way to broadly make the sources of a product publicly accessible, the open-source licenses allow the authors to fine tune such access.

University of Limerick15 Open source licenses (Wiki) u Open source licenses define the privileges and restrictions a licensor must follow in order to use, modify or redistribute the open-source software. Open-source software includes software with source code in the public domain and software distributed under an open-source license. u Examples of open source licenses include Apache License, BSD license, GNU General Public License, GNU Lesser General Public License, MIT License, Eclipse Public License and Mozilla Public License. u The proliferation of open source licenses is one of the few negative aspects of the Open Source movement because it is often difficult to understand the legal implications of the differences between licenses.

University of Limerick16 Open source develops motivation u 70% of developers participate in the FLOSS community “to learn and develop new skills” u 67% of developers participate in the FLOSS community “to share … knowledge and skills” u 30% of developers participate in the FLOSS community “to improve … job opportunities” u Over 50% of developers derive income, directly or indirectly, through their participation in the FLOSS community Source: Free/Libre/Open Source Software (FLOSS) Study of Developers

University of Limerick17 Characteristics of Open Source Communities Benign Dictatorship Meritocracy

University of Limerick18 Characteristics of Open Source Communities u Reputation matters and is built by answering questions and contributing u You don’t have to be a developer to contribute –Contributions can take the form of code, documentation, wiki organization

University of Limerick19 Widely Used Open Source Applications LinuxOS FirefoxWeb browser ApacheWeb server OpenOffice.orgMS Office alternative MySQLSQL server WordPressBlogging software AudacityAudio file editor MediaWikiWiki software DrupalWebsite content management system (CMS) PidginIM/IRC

University of Limerick20 Browser Statistics

University of Limerick21 Free/Libre/Open Source Software u “FLOSS” is everywhere, the Internet depends on it u Every PC running Microsoft Windows includes open source components for networking – TCP/IP, the basic internet protocol; BIND, to access domain names… u This model maintains some of the most important, innovative technologies today

University of Limerick22 OS Development Models

University of Limerick23 The Cathedral and the Bazaar (Wikipedia) u In his 1997 essay The Cathedral and the Bazaar, open- source evangelist Eric S. Raymond suggests a model for developing OSS known as the Bazaar model u Raymond likens the development of software by traditional methodologies to building a cathedral, "fully crafted by individual wizards or small bands of mages working in splendid isolation“ u He suggests that all software should be developed using the bazaar style, which he described as "a great babbling bazaar of differing agendas and approaches."

University of Limerick24 The Cathedral and the Bazaar (Wikipedia) u In the Cathedral, model development takes place in a centralized way u Roles are clearly defined. Roles include people dedicated to designing (the architects), people responsible for managing the project, and people responsible for implementation u Traditional software engineering follows the Cathedral model u Fred P. Brooks in his book The Mythical Man-Month advocates this sort of model u He goes further to say that in order to preserve the architectural integrity of a system, the system design should be done by as few architects as possible.

University of Limerick25 The Cathedral and the Bazaar (Wikipedia) u The Bazaar model, however, is different. In this model, roles are not clearly defined. Gregorio Robles suggests that software developed using the Bazaar model should exhibit the following patterns: –Users should be treated as co-developers –Early Releases –Frequent Integration –Several Versions –High Modularization –Dynamic decision making structure u Most well-known OSS products follow the Bazaar model as suggested by Eric Raymond u These include projects such as Linux, Netscape, Apache, the GNU Compiler Collection, and Perl to mention a few.

University of Limerick26 The Cathedral and the Bazaar (Wikipedia) u Users should be treated as co-developers –The users are treated like co-developers and so they should have access to the source code of the software. Furthermore users are encouraged to submit additions to the software, code fixes for the software, bug reports, documentation etc. Having more co-developers increases the rate at which the software evolves. Linus's law states that, "Given enough eyeballs all bugs are shallow." This means that if many users view the source code they will eventually find all bugs and suggest how to fix them. Note that some users have advanced programming skills, and furthermore, each user's machine provides an additional testing environment. This new testing environment offers that ability to find and fix a new bug. u Early Releases –The first version of the software should be released as early as possible so as to increase one's chances of finding co-developers early.

University of Limerick27 The Cathedral and the Bazaar (Wikipedia) u Frequent Integration –New code should be integrated as often as possible so as to avoid the overhead of fixing a large number of bugs at the end of the project life cycle. Some Open Source projects have nightly builds where integration is done automatically on a daily basis. u Several Versions –There should be at least two versions of the software. There should be a buggier version with more features and a more stable version with fewer features. The buggy version (also called the development version) is for users who want the immediate use of the latest features, and are willing to accept the risk of using code that is not yet thoroughly tested. The users can then act as co-developers, reporting bugs and providing bug fixes. The stable version offers the users fewer bugs and fewer features. u High Modularization –The general structure of the software should be modular allowing for parallel development. u Dynamic decision making structure –There is a need for a decision making structure, whether formal or informal, that makes strategic decisions depending on changing user requirements and other factors. Cf. Extreme programming.

University of Limerick28 Open source (Wiki) u The open source vs. closed source (alternatively called proprietary software) debate is sometimes heated. u Making money through traditional methods, such as sale of the use of individual copies and patent royalty payment, is more difficult and sometimes impractical with open-source software u Some closed-source advocates see open-source software as damaging to the market of commercial software u This complaint is countered by a large number of alternative funding streams such as: –giving away the software and charging for installation and support (used by many Linux distributions) –make the software available as open-source so that people will be more likely to purchase a related product or service you do sell (e.g. OpenOffice.org vs StarOffice) –cost avoidance / cost sharing: many developers need a product, so it makes sense to share development costs (this is the genesis of the X Window System and the Apache web server)

University of Limerick29 Open source (Wiki) u Studies about security in open-source software versus closed-source software show that closed-source software have fewer advisories but open-source software usually has less time between flaw discovery and a patch or fix u Advocates of closed source argue that since no one is responsible for open-source software, there is no incentive or guarantee it will be fixed, and there is nobody to take responsibility for negligence u Open-source advocates argue that since the source code of closed- source software is not available, there is no way to know what security vulnerabilities or bugs may exist u However, having the source code for a program could also make it easier for a malicious person to discover security vulnerabilities that they can take advantage of (instead of reporting or fixing them.)