Post on 28-Dec-2015
Introduction to Open Source
Imed Hammouda, adjunct professorTampere University of Technology
1
19.04.23
Open Source vs. Free Software
Free software (1983) is: A philosophy A social movement FSF
Open source (1998) is: A business model A development methodology OSI
Both approaches share a common vision on access to source code:
Freedom to run Freedom to study Freedom to redistribute Freedom to improve
2
19.04.23
Open Source – The Method
“Open source is a development method for software that harnesses the power of distributed peer review and transparency of process.”
“The promise of open source is better quality, higher reliability, more flexibility, lower cost, and an end to predatory vendor lock-in.”
Ideally, participation in the community need not be restricted in any ways.
Practice can however make the difference!
In addition, adequate tools are needed!
[www.bugzilla.org]
Open Source – The Community
Non-profit organization SponsorsCommercial enterprisesThe Onion model of communitiesCommunities around OSS projects
Volunteer-based• Ideology, freedom, sharing
Company-based• Business, funded developers
MixedDifferent types of communities
Linux: Project centric MySQL: Business centric Eclipse: Foundation centric
Projec t leaderC ore member
Active developerPeripheral developer
Bug fixerBug reporter
R eaderPass ive user
Open Source – The License
She who writes the code owns the copyright, and can decide the license
A way to publish software with the right... ... to make copies and distribute software ... to have access to the software's source code ... to improve software
License With Copyleft (GPL, LGPL, Mozilla (weak copyleft) etc.) Without Copyleft (BSD, Apache) Viral effect – open and proprietary can touch only if allowed Dual License – if you own the copyright, then you decide which
license
OS licenses are nowadays accepted by US authorities Court of Appeals for the Federal Circuit (THE "IP" court in the US) has
upheld a free copyright license. [http://lessig.org/blog/2008/08/ huge_and_important_news_free_l.html]
Open Source – The Business
Internal usage + competition strategy Software As A Service (SAAS) Consulting (technical, legal, strategic,…) Integration, aggregation, and customization Retailing and distribution Product and software know-how Process and methodology know-how Services and product support Training and recruiting Certification and quality assurance Substitution/migration Dual licensing Documentation (books, user manuals, etc) Other process-related issues (testing, deployment, etc) Hardware + other related software (extra features, protocols, configurations) + media
content Commercial software on top of OSS Platform specialization/adaptation, localization IT infrastructure …
Open Source – The Technology Life Cycle
Efficient and Effective Development (http://www.itea-cosi.org/)
Open Source – The Cost
Open Source – The Design
Core system
Extension
Extension
Extension
Plugin
Plugin
Plugin
• Designs often remain undocumented
• Architecture recovery tools helpful
• In general attention geared towards running code
• Aim at designing (large) separate entities of open source and proprietary code
Thank You!
10
19.04.23