Behind Linus's Law: Investigating Peer Review Processes in Open Source

Open Access
Wang, Jing
Graduate Program:
Information Sciences and Technology
Doctor of Philosophy
Document Type:
Date of Defense:
October 07, 2013
Committee Members:
  • John Millar Carroll, Committee Chair
  • Andrea H Tapia, Committee Member
  • Rosalie Ocker, Committee Member
  • Robert Macy, Committee Member
  • open source software
  • online communities
  • computer-supported cooperative work
  • software engineering
  • design
Open source software has revolutionized the way people develop software, organize collaborative work, and innovate. The numerous open source software systems that have been created and adopted over the past decade are influential and vital in all aspects of work and daily life. The understanding of open source software development can enhance its performance and product quality, and inform other types of software development collaboration and virtual organizations. Linus’s law, “given enough eyeballs, all bugs are shallow”, underlines the power of the crowd in open source software peer review. Despite its importance, Linus’s law has surprisingly received very limited examination and elaboration. The peer review process, in which peers evaluate software products, finding, analyzing, and fixing defects and deficiencies, remain largely unclear. The research this dissertation presents is to enhance the understanding of open source software peer review, contributing both a descriptive characterization and design recommendations of socio-technical support for the collaborative process. The empirical investigation involves comparative case studies on two established and well-recognized open source software communities, Mozilla and Python. Extensive analyses on bug reports archived in bug tracking systems, the central tools for open source software peer review, unfold the common process of open source peer review as well as the variations of collaboration between different types of projects. These findings indicate technology and organizational designs that may support those commonalities and differences. Situating the two cases in the evolution of open source software development, this research also articulates the differences in comparison to prior software review approaches as well as the implications for the emerged new ways of organizing open source software projects.