Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Comparative case studies of open source software peer review practices

Published: 01 November 2015 Publication History

Abstract

ContextThe power of open source software peer review lies in the involvement of virtual communities, especially users who typically do not have a formal role in the development process. As communities grow to a certain extent, how to organize and support the peer review process becomes increasingly challenging. A universal solution is likely to fail for communities with varying characteristics. ObjectiveThis paper investigates differences of peer review practices across different open source software communities, especially the ones engage distinct types of users, in order to offer contextualized guidance for developing open source software projects. MethodComparative case studies were conducted in two well-established large open source communities, Mozilla and Python, which engage extremely different types of users. Bug reports from their bug tracking systems were examined primarily, complemented by secondary sources such as meeting notes, blog posts, messages from mailing lists, and online documentations. ResultsThe two communities differ in the key activities of peer review processes, including different characteristics with respect to bug reporting, design decision making, to patch development and review. Their variances also involve the designs of supporting technology. The results highlight the emerging role of triagers, who bridge the core and peripheral contributors and facilitate the peer review process. The two communities demonstrate alternative designs of open source software peer review and their tradeoffs were discussed. ConclusionIt is concluded that contextualized designs of social and technological solutions to open source software peer review practices are important. The two cases can serve as learning resources for open source software projects, or other types of large software projects in general, to cope with challenges of leveraging enormous contributions and coordinating core developers. It is also important to improve support for triagers, who have not received much research effort yet.

References

[1]
J. Aranda, G. Venolia, The secret life of bugs: going past the errors and omissions in software repositories, in: Proc. ICSE 2009, ACM Press, 2009, pp. 298-308.
[2]
P.M. Bach, R. DeLine, J.M. Carroll, Designers wanted: participation and the user experience in open source software development, in: Proc. CHI 2009, ACM Press, 2009, pp. 985-994.
[3]
F. Barcellini, F. Detienne, J.M. Burkhardt, User and developer mediation in an Open Source Software community: boundary spanning through cross participation in online discussions, Int. J. Hum.-Comput. Stud., 66 (2008) 558-570.
[4]
A. Barham, The impact of formal QA practices on FLOSS communities-the case of Mozilla, in: Open Source Systems: Long-Term Sustainability, Springer, 2012, pp. 262-267.
[5]
D. Bertram, A. Voida, S. Greenberg, R. Walker, Communication, collaboration, and bugs: the social nature of issue tracking in software engineering, in: Proc. CSCW 2010, ACM Press, 2010, pp. 291-300.
[6]
S. Breu, R. Premraj, J. Sillito, T. Zimmermann, Information needs in bug reports: improving cooperation between developers and users, in: Proc. CSCW 2010, ACM Press, 2010, pp. 301-310.
[7]
A. Capiluppi, P. Lago, M. Morisio, Characteristics of open source projects, in: Proceedings. Seventh European Conference on Software Maintenance And Reengineering, 2003, IEEE, 2003, pp. 317-327.
[8]
K. Crowston, H. Annabi, J. Howison, C. Masango, Effective work practices for FLOSS development: a model and propositions, in: Proc. HICSS'05, IEEE, 2005, pp. 197a.
[9]
K. Crowston, B. Scozzi, Open source software projects as virtual organisations: competency rallying for software development, IEEE Softw., 149 (2002) 3-17.
[10]
K. Crowston, B. Scozzi, Bug fixing practices within free/libre open source software development teams, J. Database Manage., 19 (2008) 1-30.
[11]
K. Crowston, K. Wei, J. Howison, A. Wiggins, Free/libre open source software development: what we know and what we do not know, ACM Comput. Surv., 44 (2012).
[12]
L. Dabbish, C. Stuart, J. Tsay, J. Herbsleb, Social coding in GitHub: transparency and collaboration in an open software repository, in: Proc. CSCW 2012, ACM Press, 2012, pp. 1277-1286.
[13]
L. Dahlander, L. Frederiksen, The core and cosmopolitans: a relational view of innovation in user communities, Organ. Sci., 23 (2012) 988-1007.
[14]
N. Ducheneaut, Socialization in an open source software community: a socio-technical analysis, Comput. Supported Coop. Work (CSCW), 14 (2005) 323-368.
[15]
K. Finley, Github Has Surpassed Sourceforge and Google Code in Popularity, 2011.
[16]
C. Francalanci, F. Merlo, Empirical analysis of the bug fixing process in open source projects, Open Sour. Dev. Commun. Qual. (2008) 187-196.
[17]
J. Gamalielsson, B. Lundell, Sustainability of open source software communities beyond a fork: how and why has the LibreOffice project evolved?, J. Syst. Softw., 89 (2014) 128-145.
[18]
R.A. Ghosh, R. Glott, B. Krieger, G. Robles, Free/Libre and Open Source Software: Survey and Study, International Institute of Infonomics, University of Maastricht and Berlecon Research GmbH, 2002.
[19]
T.J. Halloran, W.L. Scherlis, High quality and open source software practices, in: Proc. 2nd Workshop on Open Source Software Engineering, University College Cork, Ireland, 2002.
[20]
K. Hamasaki, R.G. Kula, N. Yoshida, A. Cruz, K. Fujiwara, H. Iida, Who does what during a code review? datasets of OSS peer review repositories, in: Proc. MSR2013, IEEE Press, 2013, pp. 49-52.
[21]
R. Heckman, K. Crowston, U.Y. Eseryel, J. Howison, E. Allen, Q. Li, Emergent decision-making practices in free/libre open source software (FLOSS) development teams, in: Open Source Development, Adoption and Innovation, 2007, pp. 71-84.
[22]
The Institute of Electrical and Electronics Engineers, IEEE Guide Standard for Software Reviews IEEE Std 1028-1997, New York, 1999.
[23]
S. Just, R. Premraj, T. Zimmermann, Towards the next generation of bug tracking systems, in: Proc. VL/HCC 2008, IEEE, 2008, pp. 82-85.
[24]
A. Ko, P. Chilana, How power users help and hinder open bug reporting, in: Proc. CHI 2010, ACM Press, 2010, pp. 1665-1674.
[25]
S. Koch, G. Schneider, Effort, co-operation and co-ordination in an open source software project: GNOME, Inf. Syst. J., 12 (2002) 27-42.
[26]
P.B. de Laat, Governance of open source software: state of the art, J. Manage. Governance, 11 (2007) 165-177.
[27]
C. Lattemann, S. Stieglitz, Framework for governance in open source communities, in: Proc. HICSS 2005, IEEE, 2005, pp. 192a.
[28]
A. Mockus, T. Fielding, J.D. Herbsleb, Two case studies of open source software development: Apache and Mozilla, ACM Trans. Softw. Eng. Methodol., 11 (2002) 309-346.
[29]
J.Y. Moon, L. Sproull, Essence of distributed work: the case of the Linux kernel, First Monday, 5 (2000).
[30]
M. Mukadam, C. Bird, P.C. Rigby, Gerrit software code review data from android, in: Proc. MSR2013, IEEE, 2013, pp. 45-48.
[31]
E.S. Raymond, The Cathedral and the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary, O'Reilly, 2001.
[32]
C.R. Reis, R.P. de Mattos Fortes, An overview of the software engineering process and tools in the Mozilla project, in: Proc. Open Source Software Development Workshop, 2002, pp. 155-175.
[33]
P. Rigby, D. German, M. Storey, Open source software peer review practices: a case study of the apache server, in: Proc. ICSE 2008, ACM Press, 2008, pp. 541-550.
[34]
P.C. Rigby, M.A. Storey, Understanding broadcast based peer review on open source software projects, in: Proc. ICSE 2011, ACM Press, 2011, pp. 541-550.
[35]
J.E. Robbins, Adopting OSS methods by adopting OSS tools, in: Proc. the ICSE 2nd Workshop on Open Source, 2002.
[36]
F. Rullani, S. Haefliger, The periphery on stage: the intra-organizational dynamics in online communities of creation, Res. Policy, 42 (2013) 941-953.
[37]
R.J. Sandusky, L. Gasser, Negotiation and the coordination of information and activity in distributed software problem management, in: Proc. GROUP2005, ACM Press, 2005, pp. 187-196.
[38]
W. Scacchi, Understanding open source software evolution, Softw. Evol. Feedback: Theory Pract., 9 (2006) 181-205.
[39]
C.M. Schweik, Sustainability in open source software commons: lessons learned from an empirical study of SourceForge projects, Technol. Innov. Manage. Rev., 3 (2013).
[40]
M. Shaikh, T. Cornford, Version management tools: CVS to BK in the Linux kernel, in: Proc. Taking Stock of the Bazaar: The 3rd Workshop on Open Source Software Engineering, ICSE2003, 2003.
[41]
A.C. Strauss, J. Corbin, Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory, Sage Publications Inc., 1998.
[42]
M. Terry, M. Kay, B. Lafreniere, Perceptions and practices of usability in the free/open source software (FoSS) community, in: Proc. CHI 2010, ACM Press, 2010, pp. 999-1008.
[43]
M.B. Twidale, D.M. Nichols, Exploring usability discussions in open source development, in: Proc. HICSS 2005, IEEE, 2005, pp. 198c.
[44]
G. von Krogh, S. Spaeth, K.R. Lakhani, Community, joining, and specialization in open source software innovation: a case study, Res. Policy, 32 (2003) 1217-1241.
[45]
J. Wang, J.M. Carroll, Behind Linus's law: a preliminary analysis of open source software peer review practices in Mozilla and Python, in: Proc. CTS 2011, IEEE, 2011, pp. 117-124.
[46]
J. Wang, P.C. Shih, J.M. Carroll, Revisiting Linus's law: benefits and challenges of open source software peer review, Int. J. Hum.-Comput. Stud., 77 (2015) 52-65.
[47]
B. Warsaw, PEP 10 - Voting Guidelines, 2007.
[48]
K. Wiegers, Peer Reviews in Software: A Practical Guide, Addison-Wesley, 2001.
[49]
J. Xie, M. Zhou, A. Mockus, Impact of triage: a study of Mozilla and gnome, in: ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, 2013, IEEE, 2013, pp. 247-250.
[50]
Y. Yamauchi, M. Yokozawa, T. Shinohara, T. Ishida, Collaboration with Lean Media: how open-source software succeeds, in: Proc. CSCW 2000, ACM Press, 2000, pp. 329-338.
[51]
X. Yang, R.G. Kula, C.C.A. Erika, N. Yoshida, K. Hamasaki, K. Fujiwara, H. Iida, Understanding OSS peer review roles in peer review social network (PeRSoN), in: Proc. APSEC2012, IEEE, 2012, pp. 709-712.
[52]
Y. Ye, K. Nakakoji, Y. Yamamoto, K. Kishida, The co-evolution of systems and communities in free and open source software development, Free/Open Source Softw. Develop. (2005) 59-82.
[53]
R.K. Yin, Sage, 2003.

Cited By

View all
  • (2024)Do Words Have Power? Understanding and Fostering Civility in Code Review DiscussionProceedings of the ACM on Software Engineering10.1145/36607801:FSE(1632-1655)Online publication date: 12-Jul-2024
  • (2023)Predicting the Change Impact of Resolving Defects by Leveraging the Topics of Issue Reports in Open Source Software SystemsACM Transactions on Software Engineering and Methodology10.1145/359380232:6(1-34)Online publication date: 30-Sep-2023
  • (2023)A systematic literature review on trust in the software ecosystemEmpirical Software Engineering10.1007/s10664-022-10238-y28:1Online publication date: 1-Jan-2023
  • Show More Cited By

Index Terms

  1. Comparative case studies of open source software peer review practices
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Information and Software Technology
    Information and Software Technology  Volume 67, Issue C
    November 2015
    265 pages

    Publisher

    Butterworth-Heinemann

    United States

    Publication History

    Published: 01 November 2015

    Author Tags

    1. Design
    2. Open source software
    3. Software peer review
    4. Virtual community

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 22 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Do Words Have Power? Understanding and Fostering Civility in Code Review DiscussionProceedings of the ACM on Software Engineering10.1145/36607801:FSE(1632-1655)Online publication date: 12-Jul-2024
    • (2023)Predicting the Change Impact of Resolving Defects by Leveraging the Topics of Issue Reports in Open Source Software SystemsACM Transactions on Software Engineering and Methodology10.1145/359380232:6(1-34)Online publication date: 30-Sep-2023
    • (2023)A systematic literature review on trust in the software ecosystemEmpirical Software Engineering10.1007/s10664-022-10238-y28:1Online publication date: 1-Jan-2023
    • (2023)How are decisions made in open source software communities? — Uncovering rationale from python email repositoriesJournal of Software: Evolution and Process10.1002/smr.252636:4Online publication date: 26-Jan-2023
    • (2022)Turnover of Companies in OpenStack: Prevalence and RationaleACM Transactions on Software Engineering and Methodology10.1145/351084931:4(1-24)Online publication date: 12-Jul-2022
    • (2021)Influence of Roles in Decision-Making during OSS Development — A Study of PythonProceedings of the 25th International Conference on Evaluation and Assessment in Software Engineering10.1145/3463274.3463326(50-59)Online publication date: 21-Jun-2021
    • (2021)Extracting Rationale for Open Source Software Development DecisionsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00095(1008-1019)Online publication date: 22-May-2021
    • (2021)An exploratory study on confusion in code reviewsEmpirical Software Engineering10.1007/s10664-020-09909-526:1Online publication date: 1-Jan-2021
    • (2020)Sustaining Open Source Communities by Understanding the Influence of Discursive Manifestations on SentimentInformation Systems Frontiers10.1007/s10796-020-10059-825:1(241-257)Online publication date: 15-Sep-2020
    • (2018)"Was my contribution fairly reviewed?"Proceedings of the 40th International Conference on Software Engineering10.1145/3180155.3180217(523-534)Online publication date: 27-May-2018
    • Show More Cited By

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media