© prof. katherine stewart 2007 open source software – an overview for a systems analysis class

25
© Prof. Katherine Stewart 2007 Open Source Software – an overview for a Systems Analysis class

Upload: isabel-austin

Post on 25-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

© Prof. Katherine Stewart 2007

Open Source Software – an overview for a Systems Analysis class

© Prof. Katherine Stewart 2007

Outline

• What is Open Source?• OSS Development processes• What’s the role of open source in industry?

– Using open source software– Business models

© Prof. Katherine Stewart 2007

Why Care about F/OSS?

Without Free Software…• Over half the Web sites on the Internet would disappear. (Apache

server) • Those sites still operating would have little or no active content. (Perl). • Most electronic mailing lists would stop. (Majordomo). • Email wouldn't be working. (sendmail)• You'll be typing "199.201.243.200" into your browser instead of

"www.netaction.org". (BIND - Berkeley Internet Name Daemon).

From http://www.netaction.org/articles/freesoft.html

Many organizations are turning to F/OSS:• Google, Autozone• Government agencies in Massachusetts, Brazil, India

© Prof. Katherine Stewart 2007

Examples of OSS projects

• LAMP– Linux – operating system– Apache – web server– MySQL - database– PHP/Perl/Python - programming

• Firefox – web browser• Sendmail – mail transfer• OpenOffice – desktop productivity software

• SourceForge – repository of >100,000 OSS projects

© Prof. Katherine Stewart 2007

What is “Source”?

• Source – code of a computer program

• Closed source – the code is converted to non-readable/non-editable format before distribution

• Open source – code is distributed in human readable, editable form.

© Prof. Katherine Stewart 2007

Open Source Pre-History

• Richard Stallman, Free Software Foundation, 1984

• Linus Torvalds, Linux, 1991

• Feb 1998: “Open source” label decided on at strategy meeting of free software insiders who formed OSI.

© Prof. Katherine Stewart 2007

Open Source Definition by OSI (1)

• OSI has set the following criteria to define OSS:• Free Redistribution

– Anyone can give it away or sell it, no royalty or fees.• Source Code

– Must include and allow distribution of source.• Derived Works

– Must be permitted and distributable under the same terms as the original license.

• Integrity of the source– May restrict distribution of modified source code only if

distribution of patches is allowed. Must permit distribution of derived work, though may require it to carry a different name or version number.

© Prof. Katherine Stewart 2007

• No Discrimination against any person or group. • No discrimination against fields of endeavor. • Distribution of license.

– Can’t close the software through indirect means such as non-disclosure agreements

• License can’t be specific to a product.• License can’t restrict other software.• License must be technology-neutral

Open Source Definition by OSI (2)

© Prof. Katherine Stewart 2007

Open source licenses (1)

• GNU General Public License (GPL)– 1989, Free Software Foundation, “copyleft”– “The licenses for most software are designed to take

away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software…”

© Prof. Katherine Stewart 2007

Open source licenses (2)

• BSD license– “Redistribution and use in source and binary forms, with or

without modification, are permitted provided that the following conditions are met:

• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

• Neither the name of the <ORGANIZATION> nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ‘AS IS’ …”

© Prof. Katherine Stewart 2007

Open source licenses (3)

• Mozilla Public License (Netscape)• IBM Public License• Apache Software License• Sun Industry Standards Source License• Intel Open Source License• Apple Public Source License

– See www.opensource.org for a complete list of licenses

© Prof. Katherine Stewart 2007

Open Source – Industry Reactions

• 7 May 1998: Corel Computer Corporation announces the Netwinder, an inexpensive network computer that uses Linux as its production OS.

• 22 Jun 1998: IBM announces that it will sell and support Apache as part of its WebSphere suite.

• 17 July 1998: Oracle and Informix announce that they will port their databases to Linux.

• 10 Aug 1998: Sun Microsystems makes Solaris available under a free license to individual users, also to educational/non-profit/research institutions.

• 11 Aug 1998: Revision 1.0 of the VinodV memorandum on open source (the Halloween Document), is circulated inside Microsoft.

© Prof. Katherine Stewart 2007

Halloween Documents – excerpts (1)

“Open Source Software poses a direct, short-term revenue and platform threat to Microsoft, particularly in server space…commercial quality can be achieved/exceeded by Open Source Software projects…The ability of the Open Source Software process to collect and harness the collective IQ of thousands of individuals across the Internet is simply amazing.”

© Prof. Katherine Stewart 2007

Halloween Documents – excerpts (2)

“OSS is long-term credible ... FUD tactics can not be used to combat it … Linux has been deployed in mission critical, commercial environments with an excellent pool of public testimonials ... Linux is on track to eventually own the x86 UNIX market …

OSS projects have been able to gain a foothold in many server applications because of the wide utility of highly commoditized, simple protocols. By extending these protocols and developing new protocols, we can deny OSS projects entry into the market.”

© Prof. Katherine Stewart 2007

Microsoft Shared Source Initiative

• Principles of the Shared Source Philosophy (from the Microsoft website ~2003):– Empower customers and the developer community to be more

successful through source access programs supported by leading-edge development tools.

– Improve the feedback mechanisms that contribute to the development of better solutions and tools for the future.

– Nurture the continued development of a robust and healthy software industry through expanded source access in academic institutions and universities worldwide.

– Protect software intellectual property rights through the application of a source licensing policy that can be tailored to different customer and developer needs rather than a one-size-fits-all licensing approach.

– enable Windows users to ensure the integrity and security of their computing environments.

© Prof. Katherine Stewart 2007

Microsoft Shared Source Licenses (~2004) (availability varies by region and organization)

Shared Source Licensing Programs Reference Debug Modify Distribute Commercialize

Enterprise YES YES NO NO NO

Most Valuable Professional (MVP) YES YES NO NO NO

Systems Integrator YES YES NO NO NO

Original Equipment Manufacturer YES YES NO NO NO

Microsoft Research YES YES NO NO NO

Government Security Program YES NO NO NO NO

Windows CE YES YES YES YES NO

Windows CE Academic Curriculum YES YES YES NO NO

Windows CE Premium Derivatives YES YES YES NO NO

Windows CE Prem. Deriv. Redistribution YES YES YES YES YES

ASP.NET Samples YES YES YES YES YES

FlexWiki YES YES YES YES YES

Rotor (C#/Jscript/CLI) Implementations YES YES YES YES NO

Smart Devices Developer Samples YES YES YES YES YES

Visual Studio .NET Academic Tools YES YES YES YES YES

Windows Installer XML YES YES YES YES YES

Windows Template Library YES YES YES YES YES

© Prof. Katherine Stewart 2007

MS Shared Source – Licenses (~2005)

• Microsoft Permissive License– view, modify, and redistribute the source code for either commercial or

non-commercial purposes. – change the source code and share it with others. – May charge a licensing fee for your modified work. – Intended for developer tools, applications, and components.

• Microsoft Community License– reciprocal source code license; carries specific requirements if you choose

to combine Ms-CL code with your own code. – allows for both non-commercial and commercial modification and

redistribution of licensed software and carries a per-file reciprocal term

• Microsoft Reference License– view source code in order to gain a deeper understanding of the inner

workings of a Microsoft technology– does not allow for modification or redistribution.

• “Limited” PL and CL – restrict to windows platform only

© Prof. Katherine Stewart 2007

How does open source software get built?

• “Grassroots” Processes– Founding– Sharing & Building– Releasing & Licensing– Support

• Commercial/Hybrid processes– Mozilla video

© Prof. Katherine Stewart 2007

Why do people contribute to open source projects?

• Commercial motivation– Employees of host company (e.g., Netscape, Sendmail, Inc.)– Sell consulting services, support, or related products

• Reputation & Use of product– “one does what one does both because the result is something

one wants, and for 'egoboo'. The respect of those I perceive to be my peers is important”

• Community / Intrinsic reasons– “unifying feeling of open-source developers is a desire to learn

new skills, help out others, and be part of something big” – “We tend to hang together with intense loyalty and pride in what

we achieved as a group.”

– Excerpts are from responses to a survey of open source project administrators, Stewart & Gosain, 2001

© Prof. Katherine Stewart 2007

How does open source compare to proprietary development?

OS – Grassroots

OS – Commercial Proprietary, closed development

ID, Selection, Initiation

Planning

Analysis

Design

Implementation

Maintenance

© Prof. Katherine Stewart 2007

Open Source Business Models (1)

• Support Sellers (otherwise known as "Give Away the Recipe, Open A Restaurant"): Give away the software product, but sell distribution, branding, and after-sale service. This is what Red Hat did.

• Loss Leader: Give away open-source as a loss-leader and market positioner for closed software. This is what Netscape did.

• From http://www.opensource.org/advocacy/case_for_business.html

© Prof. Katherine Stewart 2007

Open Source Business Models (2)

• Widget Frosting: A hardware company (for which software is a necessary adjunct, but a cost rather than profit center) goes open-source in order to get better drivers and interface tools cheaper. Example: Silicon Graphics – Samba.

• Accessorizing: Selling accessories – books, compatible hardware, complete systems with open-source software pre-installed. Examples: O'Reilly Associates, SSC, and VA Research.

• From http://www.opensource.org/advocacy/case_for_business.html

© Prof. Katherine Stewart 2007

Discussion Questions – creating OSS

• What should a company consider in deciding whether or not to adopt an open source model for development?

• If such a model is to be adopted, how should it be done?

© Prof. Katherine Stewart 2007

Discussion Questions – using OSS

• What concerns might an organization have in adopting an open source product?

• Why should (or shouldn’t) an organization implement an open source product instead of a proprietary product?

© Prof. Katherine Stewart 2007

Open Source - Summary

• Development processes• Licenses• Business Models• Decision criteria for adoption

– Security– TCO