Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms
Peer review is seen as an important quality assurance mechanism in both industrial development and the open source software (OSS) community. The techniques for performing inspections have been well studied in industry; in OSS development, peer review practices are less well understood. In contra...
Main Author: | |
---|---|
Other Authors: | |
Language: | English en |
Published: |
2011
|
Subjects: | |
Online Access: | http://hdl.handle.net/1828/3258 |
id |
ndltd-uvic.ca-oai-dspace.library.uvic.ca-1828-3258 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-uvic.ca-oai-dspace.library.uvic.ca-1828-32582015-01-29T16:51:35Z Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms Rigby, Peter C Storey, Margaret-Anne German, Daniel M OSS Peer Review Peer review is seen as an important quality assurance mechanism in both industrial development and the open source software (OSS) community. The techniques for performing inspections have been well studied in industry; in OSS development, peer review practices are less well understood. In contrast to industry, where reviews are typically assigned to specific individuals, in OSS, changes are broadcast to hundreds of potentially interested stakeholders. What is surprising is that this approach works very well, despite concerns that reviews may be ignored, or that discussions will deadlock because too many uninformed stakeholders are involved. In this work we use a multi-case study methodology to develop a theory of OSS peer review. There are three research stages. In the first stage, we examine the policies of 25 OSS projects to understand the review processes used on successful OSS projects. We also select six projects for further analysis: Apache, Subversion, Linux, FreeBSD, KDE, and Gnome. In the second stage, using archival records from the six projects, we construct a series of metrics that produces measures similar to those used in traditional inspection experiments. We measure the frequency of review, the size and complexity of the contribution under review, the level of participation during review, the experience and expertise of the individuals involved in the review, the review interval, and number of issues discussed during review. We create statistical models of the review efficiency, review interval, and effectiveness, the issues discussed during review, to determine which measures have the largest impact on review efficacy. In the third stage, we use grounded theory to analyze 500 instances of peer review and interview ten core developers across the six projects. This approach allows us to understand why developers decide to perform reviews, what happens when reviews are ignored, how developers interact during a review, what happens when too many stakeholders are involved during review, and the effect of project size on the review techniques. Our findings provide insights into the simple, community-wide mechanisms and behaviours that developers use to effectively manage large quantities of reviews and other development discussions. The primary contribution of this work is a theory of OSS peer review. We find that OSS reviews can be described as (1) early, frequent reviews (2) of small, independent, complete contributions (3) that, despite being asynchronously broadcast to a large group of stakeholders, are reviewed by a small group of self-selected experts (4) resulting in an efficient and effective peer review technique. Graduate 2011-04-27T23:41:55Z 2011-04-27T23:41:55Z 2011 2011-04-27 Thesis http://hdl.handle.net/1828/3258 English en Available to the World Wide Web |
collection |
NDLTD |
language |
English en |
sources |
NDLTD |
topic |
OSS Peer Review |
spellingShingle |
OSS Peer Review Rigby, Peter C Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
description |
Peer review is seen as an important quality assurance mechanism in both
industrial development and the open source software (OSS) community. The
techniques for performing inspections have been well studied in industry; in
OSS development, peer review practices are less well understood.
In contrast to industry, where reviews are typically assigned to specific
individuals, in OSS, changes are broadcast to hundreds of potentially
interested stakeholders. What is surprising is that this approach works very
well, despite concerns that reviews may be ignored, or that discussions will
deadlock because too many uninformed stakeholders are involved.
In this work we use a multi-case study methodology to develop a theory of OSS
peer review. There are three research stages. In the first stage, we examine the policies of 25 OSS projects to understand
the review processes used on successful OSS projects. We also select six
projects for further analysis: Apache, Subversion, Linux, FreeBSD, KDE, and
Gnome. In the second stage, using archival records from the six projects, we construct
a series of metrics that produces measures similar to those used in traditional
inspection experiments. We measure the frequency of review, the size and
complexity of the contribution under review, the level of participation during
review, the experience and expertise of the individuals involved in the review,
the review interval, and number of issues discussed during review. We create
statistical models of the review efficiency, review interval, and
effectiveness, the issues discussed during review, to determine which measures
have the largest impact on review efficacy. In the third stage, we use grounded theory to analyze 500 instances of peer
review and interview ten core developers across the six projects. This approach
allows us to understand why developers decide to perform reviews, what happens
when reviews are ignored, how developers interact during a review, what happens
when too many stakeholders are involved during review, and the effect of
project size on the review techniques. Our findings provide insights into the
simple, community-wide mechanisms and behaviours that developers use to
effectively manage large quantities of reviews and other development
discussions.
The primary contribution of this work is a theory of OSS peer review. We find
that OSS reviews can be described as (1) early, frequent reviews (2) of small,
independent, complete contributions (3) that, despite being asynchronously
broadcast to a large group of stakeholders, are reviewed by a small group of
self-selected experts (4) resulting in an efficient and effective peer review
technique. === Graduate |
author2 |
Storey, Margaret-Anne |
author_facet |
Storey, Margaret-Anne Rigby, Peter C |
author |
Rigby, Peter C |
author_sort |
Rigby, Peter C |
title |
Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
title_short |
Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
title_full |
Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
title_fullStr |
Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
title_full_unstemmed |
Understanding open source software peer review: Review processes, parameters and statistical models, and underlying behaviours and mechanisms |
title_sort |
understanding open source software peer review: review processes, parameters and statistical models, and underlying behaviours and mechanisms |
publishDate |
2011 |
url |
http://hdl.handle.net/1828/3258 |
work_keys_str_mv |
AT rigbypeterc understandingopensourcesoftwarepeerreviewreviewprocessesparametersandstatisticalmodelsandunderlyingbehavioursandmechanisms |
_version_ |
1716729286126206976 |