Comparing pre-commit reviews and post-commit reviews using process simulation

Research output: Contribution to journalArticleResearchpeer review

Authors

Research Organisations

External Research Organisations

  • SET GmbH
  • T-Systems on site services GmbH
View graph of relations

Details

Original languageEnglish
Article numbere1865
JournalJournal of Software: Evolution and Process
Volume29
Issue number11
Publication statusPublished - Nov 2017

Abstract

Code review in practice is often performed change-based, ie, using the code changes belonging to a task to determine which code to review. Previous studies found that 2 variations of this process are used in industry: pre-commit review and post-commit review. The choice between these has implications not only for practitioners deciding on a code review process to use but also for the development of review tools and for experimentation with review processes. In some situations, a specific variant is clearly preferable due to the nature of the development process or team. In other situations, there are conflicting opinions. So we asked: Are there practically relevant performance differences between pre and post-commit reviews? How are these differences influenced by contextual factors? To assess these questions, we designed a parametric discrete event simulation model of certain agile development processes. We validated this model with practitioner's feedback and in part also with empirical data from industry. Our analysis indicates that the best choice does depend on the context but also that there are many situations with no practically relevant difference between both choices. We identified the main influencing factors and underlying effects and condensed our findings into heuristic rules.

Keywords

    agile software development, code review, discrete event simulation, post-commit review, pre-commit review

ASJC Scopus subject areas

Cite this

Comparing pre-commit reviews and post-commit reviews using process simulation. / Baum, Tobias; Kortum, Fabian; Schneider, Kurt et al.
In: Journal of Software: Evolution and Process, Vol. 29, No. 11, e1865, 11.2017.

Research output: Contribution to journalArticleResearchpeer review

Baum, T, Kortum, F, Schneider, K, Brack, A & Schauder, J 2017, 'Comparing pre-commit reviews and post-commit reviews using process simulation', Journal of Software: Evolution and Process, vol. 29, no. 11, e1865. https://doi.org/10.1002/smr.1865
Baum, T., Kortum, F., Schneider, K., Brack, A., & Schauder, J. (2017). Comparing pre-commit reviews and post-commit reviews using process simulation. Journal of Software: Evolution and Process, 29(11), Article e1865. https://doi.org/10.1002/smr.1865
Baum T, Kortum F, Schneider K, Brack A, Schauder J. Comparing pre-commit reviews and post-commit reviews using process simulation. Journal of Software: Evolution and Process. 2017 Nov;29(11):e1865. doi: 10.1002/smr.1865
Baum, Tobias ; Kortum, Fabian ; Schneider, Kurt et al. / Comparing pre-commit reviews and post-commit reviews using process simulation. In: Journal of Software: Evolution and Process. 2017 ; Vol. 29, No. 11.
Download
@article{f40f7c7fd71748b88ce1f81e21daef25,
title = "Comparing pre-commit reviews and post-commit reviews using process simulation",
abstract = "Code review in practice is often performed change-based, ie, using the code changes belonging to a task to determine which code to review. Previous studies found that 2 variations of this process are used in industry: pre-commit review and post-commit review. The choice between these has implications not only for practitioners deciding on a code review process to use but also for the development of review tools and for experimentation with review processes. In some situations, a specific variant is clearly preferable due to the nature of the development process or team. In other situations, there are conflicting opinions. So we asked: Are there practically relevant performance differences between pre and post-commit reviews? How are these differences influenced by contextual factors? To assess these questions, we designed a parametric discrete event simulation model of certain agile development processes. We validated this model with practitioner's feedback and in part also with empirical data from industry. Our analysis indicates that the best choice does depend on the context but also that there are many situations with no practically relevant difference between both choices. We identified the main influencing factors and underlying effects and condensed our findings into heuristic rules.",
keywords = "agile software development, code review, discrete event simulation, post-commit review, pre-commit review",
author = "Tobias Baum and Fabian Kortum and Kurt Schneider and Arthur Brack and Jens Schauder",
year = "2017",
month = nov,
doi = "10.1002/smr.1865",
language = "English",
volume = "29",
number = "11",

}

Download

TY - JOUR

T1 - Comparing pre-commit reviews and post-commit reviews using process simulation

AU - Baum, Tobias

AU - Kortum, Fabian

AU - Schneider, Kurt

AU - Brack, Arthur

AU - Schauder, Jens

PY - 2017/11

Y1 - 2017/11

N2 - Code review in practice is often performed change-based, ie, using the code changes belonging to a task to determine which code to review. Previous studies found that 2 variations of this process are used in industry: pre-commit review and post-commit review. The choice between these has implications not only for practitioners deciding on a code review process to use but also for the development of review tools and for experimentation with review processes. In some situations, a specific variant is clearly preferable due to the nature of the development process or team. In other situations, there are conflicting opinions. So we asked: Are there practically relevant performance differences between pre and post-commit reviews? How are these differences influenced by contextual factors? To assess these questions, we designed a parametric discrete event simulation model of certain agile development processes. We validated this model with practitioner's feedback and in part also with empirical data from industry. Our analysis indicates that the best choice does depend on the context but also that there are many situations with no practically relevant difference between both choices. We identified the main influencing factors and underlying effects and condensed our findings into heuristic rules.

AB - Code review in practice is often performed change-based, ie, using the code changes belonging to a task to determine which code to review. Previous studies found that 2 variations of this process are used in industry: pre-commit review and post-commit review. The choice between these has implications not only for practitioners deciding on a code review process to use but also for the development of review tools and for experimentation with review processes. In some situations, a specific variant is clearly preferable due to the nature of the development process or team. In other situations, there are conflicting opinions. So we asked: Are there practically relevant performance differences between pre and post-commit reviews? How are these differences influenced by contextual factors? To assess these questions, we designed a parametric discrete event simulation model of certain agile development processes. We validated this model with practitioner's feedback and in part also with empirical data from industry. Our analysis indicates that the best choice does depend on the context but also that there are many situations with no practically relevant difference between both choices. We identified the main influencing factors and underlying effects and condensed our findings into heuristic rules.

KW - agile software development

KW - code review

KW - discrete event simulation

KW - post-commit review

KW - pre-commit review

UR - http://www.scopus.com/inward/record.url?scp=85018403256&partnerID=8YFLogxK

U2 - 10.1002/smr.1865

DO - 10.1002/smr.1865

M3 - Article

AN - SCOPUS:85018403256

VL - 29

JO - Journal of Software: Evolution and Process

JF - Journal of Software: Evolution and Process

IS - 11

M1 - e1865

ER -

By the same author(s)