Open Source Development Processes. Open Source Development Process -- Jackie Fenn, Gartner Fellow, Emerging Technologies Team “Open Source Software Development,

Slides:



Advertisements
Similar presentations
Overview of Free/Open Source Software for Librarians Eric Goldhagen
Advertisements

The Web Wizards Guide to Freeware/Shareware Chapter Six Open Source Software.
Open Source Software Development & Commercialisation Developing Lifelong Learner Record Systems and ePortfolios in FE and HE: Planning for, and Coping.
Configuration management
Platinum Sponsors Gold Sponsors Navigating the Open Source Legal Waters Presenter: Jeff Strauss August 14, 2013.
AGILE DEVELOPMENT Outlines : Quick Look of agile development Agility
Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
AgileMan Consulting So what the heck is Agile? It came about as a response to the high failure rate of software projects (> 60%), where failure means late,
Open Source Communications Options & Opportunities Voice-over-IP Special Interest Group Thursday, May 17, 2007.
NEES Project Management Workshop June 16 June 18 1 Segment 2.
Ahsan Kabir Project Manager Ahsan Kabir Project Manager ………………………….
7-1 INTRODUCTION: SoA Introduced SoA in Chapter 6 Service-oriented architecture (SoA) - perspective that focuses on the development, use, and reuse of.
Chandler ISR June Chandler Open Source Personal Information Manager , calendar, contacts, tasks, free-form items Easy sharing and collaboration.
Computers in Society The Computer Industry: Open Source.
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Applied Software Project Management 1 Introduction Dr. Mengxia Zhu Computer Science Department Southern Illinois University Carbondale.
Ashok K. Mannava Mannava & Kang, P.C. Open Source Software and IP February 10, 2012.
Your Open Source strategy sucks! (well,… probably mine stinks)
Lori Bowen Ayre Library Technology Consultant The Galecia Group November, 2008 Why Libraries Should Be Considering an Open Source ILS.
Open source is a development method for software that harnesses the power of distributed peer review and transparency of process. The.
Open Your Eyes: Open Architecture, Open Source, Open Projects Mid-Atlantic Educause January 12, 2005 Copyright Patricia Gertz This work is the intellectual.
CHAPTER 6 OPEN SOURCE SOFTWARE AND FREE SOFTWARE
Open Source Software Development. Overview  OSS  OSSD  OSSD vs PSD  Future.
Principles of Object Technology Module 1: Principles of Modeling.
Baltic IT&T “Experiences of OpenOffice.org at the Lithuanian Government” Tomas Jonušas, Association “Open source for Lithuania” Experiences of OpenOffice.org.
“Here’s why you need the new wheels, too…” Shawn and Steve Image from
COMPGZ07 Project Management Presentations Graham Collins, UCL
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 7 2/23/2015.
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
BEFORE AGILE METHODS Other Engineering fields development models were used, ie: Waterfall Method: Intensive planning and refactoring before coding is actually.
Tuesday, June 8 th, Agile Development-Successful Delivery & Implementing Across the Enterprise.
Current Trends in Systems Develpment
One XP Experience: Introducing Agile (XP) Software Development into a Culture that is Willing but not Ready Joe Bergin * Fred Grossman * David Leip **
Introduction to Open Source Imed Hammouda, adjunct professor Tampere University of Technology
Benefits of a SUSE ® Subscription Insert Presenter's Name (16pt) Insert Presenter's Title (14pt) Insert Company/ (14pt)
Presented By: Avijit Gupta V. SaiSantosh.
Institutional Engagement: open source software use in UK universities and colleges Randy Metcalfe © University of Oxford This document is licensed under.
Accelerating Development Using Open Source Software Black Duck Software Company Presentation.
OSAF Board of Directors Meeting Open Source Applications Foundation September 19, 2002.
Open Source and IP Telephony: Myth Busters, Best Practices and Real Life Application in the Contact Center Kelly Duerr, Senior Product Manager Tom Chamberlain,
Industry SDLCs and Business Climate. Justin Kalicharan Credentials Director and Senior Technology Officer Over 14 years of coding experience in various.
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.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
3 rd Party Software Gail Alverson August 5, 2005.
Key components Budgeting and Planning System
ESRIN Earth Observation Program Ground Segment Department 26/09/2015 CEOS-WGISS-40 - Olivier BaroisSlide 1 Open Source Practices.
Requirements Management Traceability Planning for Change Methodology Tools.
March 2006DSpace Federation Governance Advisory Board Meeting Open Source Software (OSS) Overview.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Software Licences HSF Recommendations John Harvey / CERN 24 June 2015
Apache License as a Business Model: Challenges and Opportunities Paul Fremantle, CTO, WSO2 (with a LOT of help from Sanjiva Weerawarana,
Software from Requirements Brent Haines April 12, 2007 Why Methodology Doesn’t Really Matter.
© 2007 BigVisible Solutions, Inc. All Rights Reserved Training Solutions Agile Training Game v
Lecture 4 – XP and Agile 17/9/15. Plan-driven and agile development Plan-driven development A plan-driven approach to software engineering is based around.
Participation in OS projects: Commercial and Individual motivation.
Stand Up Comedy Project/Product Management
1  The Kroger Co – Copyright 2008 Confidential Customer 1 st Technology Confidential.
AGILE XP AND SCRUM © University of LiverpoolCOMP 319slide 1.
EXtreme Programming and Open Source engineering paradigm A comparison
1 CREATING AND MANAGING CERT. 2 Internet Wonderful and Terrible “The wonderful thing about the Internet is that you’re connected to everyone else. The.
Workshop on OSS with TT perspectives Meeting of the TT Network Board and Steering Committee Friday 10 December 2010 Bernard DENIS.
1 WSMO Studio – an Integrated Service Environment for WSMO Marin Dimitrov OntoText Lab. / Sirma WIW 2005, Innsbruck
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
Chapter 3: Understanding Software Licensing
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Open Source Software Development
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Chapter 3 – Agile Software Development
Design and Programming
Presentation transcript:

Open Source Development Processes

Open Source Development Process -- Jackie Fenn, Gartner Fellow, Emerging Technologies Team “Open Source Software Development, which relies on collective community action by enthusiasts, will inevitably take over from proprietary software development as the dominant business model”

Open Source Perceptions REALITY:  The person(s) motivated to make it better will make it better  What is more motivating - gainful employment or a passion for changing the world? PERCEPTION: If you pay for something it is better IF YOU HAD THE OPTION OF PAYING FOR SOMETHING VERSUS GETTING IT FOR FREE, WHICH WOULD YOU CHOOSE?

Open Source Perceptions REALITY:  OSS is a licensing term distinct from the OS Development Process (OSDP)  Plenty of commercial vendors do OSS WHO IS THE CUSTOMER FOR A HOBBYIST? PERCEPTION: Open Source is a hobby  All FOSS is written by two guys of questionable hygiene who have lived in a garage eating pizza and soda for the past 3 years

Open Source Perceptions REALITY:  TCO: how much does it cost to maintain? How long will those two guys in a garage stick around? Any longer than a vendor would? PERCEPTION: Open Source Software is FREE WHEN IS FREE NOT REALLY FREE? Counter Argument: R. Leftkowitz (blogger r0ml)  Why would you want the source? Providers can’t get it right so you need it?  Who do you trust with modifications anyway? People who wrote it or people who never saw it before (YOU?!)

Open Source Perceptions REALITY:  OS hype depends on the market It is established in enterprise computing Less so in other domains  As OS plateaus, confusion arises: More vendors glom on to the term Proliferation of licensing models PERCEPTION:  It seems everyone is claiming to be a true believer DID AL GORE CREATE OPEN SOURCE?  OSS one of the Top 10 technologies to watch in 2007  80% of commercial software will include OSS by 2012

Open Source Perceptions CAN YOU REALLY MAKE MONEY WITH THIS STUFF? PERCEPTION:  You cannot resell or repackage FOSS in your products without making yours OS FOSS Licensing is a cross between an expression of commercial concerns and developer religion. REALITY:  OSI now lists 65 licenses, up from about 31 in Models range from “GPL” to “LGPL” to “BSD” to “dual” Many variations exist due to IP and commercialization issues –EXAMPLE: GPLv3 »GPL is the most viral flavor of OS license »Microsoft-Novell signed an agreement 11/06 saying each will not claim patent infringement on the other (Windows & SUSE Linux) »FSF responded by making DRAFT 3 include specific clauses that say you must extend such protections to all!

Open Source Perceptions REALITY:  Agile methods (which most OSS project adopt) focus on injecting quality in the Development phase  Every other software process methodology focuses on everything BUT writing the source code! PERCEPTION: Open Source is only for non “Mission Critical” Applications  Users are getting accustomed to “just good enough”  Mission critical means “zero tolerance” for failures IS OPEN SOURCE SOFTWARE REALLY SUITABLE FOR MISSION CRITICAL APPLICATIONS?

Open Source Software Development “Open Source” is a polymorphic term  Refers to a distribution model for source code  Refers to how software is licensed ..and also refers to a development process Open Source as a Development Process  Has its roots in Agile methods Code first People first  …with some unique properties Developers are typically distributed Customer is “around” you, does not “live” with you –Community versus communal

Open Source Development Process 1.Developers are typically distributed  Wiki documentation becomes more important  Good CM becomes absolutely crucial You cannot just “go to the cube next door” to resolve issues Dual-licensing models exacerbate this issue  You have to have more courage to do your Refactoring and Code Reviews  Tool support is even more important Another communication vehicle

Open Source Development Process 2.Customer is “around” you, does not “live” with you  Product roadmap is critical Although change happens, you need to define your scope boundaries up front Burden to please community can result in poor direction --> feature and architectural drift  OSDP needs to be a little more paranoid than Agile You may need to be a bit more defensive when integrating OS to protect yourself from constant change  A part of Professional Responsibility is realizing that an OS community may depend on you This has been an issue for many OS projects, why? –NOT because the developers lack professionalism in their code –Professionalism means accountability --> for the documentation, deployability, quality, and release cycles Do not over-promise and under-deliver, even in OS!

OSDP Code Management How/Who maintains the code?  “Earn-as-you-go” style of contribution. Prove yourself to the community, earn “guru” status, and then you can commit more code.  Other open source projects have the “keys” to the source repository held tightly by a small group. Commercial vendors often do this for their OS products Consortia often do this Examples:  Eclipse - consortia-driven with roadmap and projects  ITK - New algorithms approved through a paper peer review process including source code and data  IGSTK - evolving; but for now the core components are controlled while applications may be contributed

OS Anatomy Know the anatomy of your open source releases  More OS projects now give you OTS architecture not just an OTS library Implications for integration and dependencies much higher Expected value is much higher  Know who controls which parts of an “uber” project Open source releases often support areas for community contributions (“contrib”, “plugin”, “project” etc.) that are managed in a separate repository under different policies Examples  Eclipse kernel/workbench versus Eclipse plugins  Postgres contrib features  IGSTK core components versus applications/tools

OSDP Pros and Cons OSDP / Agile Method Pros:  Focus on injecting quality as the code is being built  People-centric, and in OSS, community-centric  Emphasis on current Best Practices  Embraces change  The process, architecture and code are transparent Cons:  Relies on skilled & experienced developers Are successful XP projects successful because of the talent level of the people, not for the process?  Frustrating model for stakeholders Stakeholders want quality, cost, and schedule promises  Frequently poor support for transition activities Deployment, Documentation, and Migration can be frustrating