Towards a Science of Open Source Systems
Total Page:16
File Type:pdf, Size:1020Kb
Version of 29 November 2010 Towards a science of open source systems Final Report November 2010 Prepared for the Computing Community Consortium (CCC) Walt Scacchi, Kevin Crowston, Chris Jensen, Greg Madey, Megan Squire Thomas Alspaugh, Les Gasser, Scott Hissam, Yuzo Kanomata, Hamid Ekbia, Kangning Wei, Charles Schweik and others from the 2010 FOSS Workshop on the Future of Research in Free/Open Source Software Newport Beach, CA 10-12 February 2010 http://foss2010.isr.uci.edu 1 Version of 29 November 2010 Table of Contents Executive Summary.......................................................................................................................8 Recommendations:.................................................................................................................10 Part I The Science of FOSS.....................................................................................12 Motivational Transformations.......................................................................................................13 Overview.................................................................................................................................13 What are open source systems and what are FOSS systems?..............................................13 Where does FOSS Research belong?....................................................................................16 Why we need a national research program in FOSS systems................................................18 FOSS exists as a high-impact socio-technical phenomenon on its own right....................19 FOSS system code and related artifacts can be accessed, studied, modified, archived, and redistributed by anyone...............................................................................................19 FOSS is a technological “extremophile” in several domains..............................................20 FOSS system development is participatory and engages active user involvement...........21 FOSS development projects enable large-scale, domain-specific learning.......................21 FOSS systems are an engine of innovation.......................................................................22 FOSS systems are transforming scientific research practice across disciplines................23 FOSS development is helping to resolve outstanding problems in large-scale software engineering practice...........................................................................................................23 FOSS systems are transforming the global software and IT industries.............................24 FOSS systems are transforming governments, society, and culture..................................26 Many key FOSS system projects are U.S. led...................................................................27 What have we learned so far about FOSS Systems? Observations on FOSS systems studies.....................................................................................................................................28 Where is the action? Areas and impacts for FOSS systems research...................................32 2 Version of 29 November 2010 Part II The Current State of FOSS..........................................................................35 FOSSD Processes, Practices, and Project Forms......................................................................36 Overview.................................................................................................................................36 Our scientific research goals...................................................................................................36 The traditional view of software development processes, practices, and projects.................37 What are FOSS Development processes, practices, and projects and how do they differ from those traditional to Software Engineering?.............................................................................40 What else do we know about FOSS processes, practices, and project forms?......................51 Additional Research Opportunities for FOSSD and SE..........................................................56 Conclusions.............................................................................................................................58 Collaboration................................................................................................................................60 Overview.................................................................................................................................60 Observation and Intervention..................................................................................................62 Research Findings..................................................................................................................63 Collaboration among individual FOSS developers.............................................................63 Collaboration among FOSS projects..................................................................................64 Collaboration among multi-project FOSS ecosystems.......................................................65 Collaboration on a regional government or global scale....................................................65 Outstanding or Emerging Research Problems........................................................................66 Contributor-Level Collaboration..........................................................................................66 Project-Level Questions.....................................................................................................67 Collaborative structure and process..............................................................................68 New Users and Members..............................................................................................69 Collaborative Infrastructure............................................................................................70 Cross-Cutting Concerns.....................................................................................................71 3 Version of 29 November 2010 Conclusions.............................................................................................................................72 Ecosystems..................................................................................................................................73 Overview.................................................................................................................................73 Characterizing Interaction Among Projects in a Software Ecosystem....................................74 Interprocess Communication Among Projects in a Software Ecosystem...............................76 Process Integration.............................................................................................................77 Process Conflict..................................................................................................................79 A Sample of FOSS Ecosystems..............................................................................................80 Networked computer game ecosystems............................................................................82 Scientific computing ecosystems for X-ray astronomy and deep space imaging...............83 World Wide Web ecosystems.............................................................................................84 Research findings...................................................................................................................84 Effects of the broader ecosystem on FOSS projects..........................................................85 Effects of FOSS on the broader ecosystem.......................................................................88 Open research questions........................................................................................................89 Conclusions.............................................................................................................................93 Evolution......................................................................................................................................94 Overview ................................................................................................................................94 What is missing?.....................................................................................................................95 What do we currently know?...................................................................................................98 What do we need to know?...................................................................................................100 Evolution of FOSSD Processes, Practices and Project Forms........................................102 Evolution of FOSSD Project Infrastructure.......................................................................104 Evolution of FOSSD Project Communities.......................................................................105 4 Version of 29 November 2010 Evolution of FOSS Ecosystems........................................................................................107 Evolution of Licensing Arrangements...............................................................................108 Conclusions...........................................................................................................................111