Details
Original language | English |
---|---|
Title of host publication | Proceedings - International Conference on Software and System Process, ICSSP 2016 |
Pages | 26-35 |
Number of pages | 10 |
ISBN (electronic) | 9781450341882 |
Publication status | Published - 14 May 2016 |
Event | International Conference on Software and System Process, ICSSP 2016 - Austin, United States Duration: 14 May 2016 → 15 May 2016 |
Publication series
Name | Proceedings - International Conference on Software and System Process, ICSSP 2016 |
---|
Abstract
Code review in practice is often performed change-based, i.e. using the code changes belonging to a task to determine which code to review. In previous studies, it was found that two variations of this process are used in industry: Pre commit review (review-then-commit) and post commit review (commit-then-review). The choice for one of these variants 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, and both variants have proponents arguing for their method of choice. So we asked: Are there practically relevant performance differences between pre commit and post commit reviews, and how are these differences influenced by contextual factors? To assess this question, 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 of the simulation results 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
- Computer Science(all)
- Information Systems
- Computer Science(all)
- Software
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
Proceedings - International Conference on Software and System Process, ICSSP 2016. 2016. p. 26-35 2904362 (Proceedings - International Conference on Software and System Process, ICSSP 2016).
Research output: Chapter in book/report/conference proceeding › Conference contribution › Research › peer review
}
TY - GEN
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 - 2016/5/14
Y1 - 2016/5/14
N2 - Code review in practice is often performed change-based, i.e. using the code changes belonging to a task to determine which code to review. In previous studies, it was found that two variations of this process are used in industry: Pre commit review (review-then-commit) and post commit review (commit-then-review). The choice for one of these variants 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, and both variants have proponents arguing for their method of choice. So we asked: Are there practically relevant performance differences between pre commit and post commit reviews, and how are these differences influenced by contextual factors? To assess this question, 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 of the simulation results 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, i.e. using the code changes belonging to a task to determine which code to review. In previous studies, it was found that two variations of this process are used in industry: Pre commit review (review-then-commit) and post commit review (commit-then-review). The choice for one of these variants 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, and both variants have proponents arguing for their method of choice. So we asked: Are there practically relevant performance differences between pre commit and post commit reviews, and how are these differences influenced by contextual factors? To assess this question, 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 of the simulation results 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=84974625393&partnerID=8YFLogxK
U2 - 10.1145/2904354.2904362
DO - 10.1145/2904354.2904362
M3 - Conference contribution
AN - SCOPUS:84974625393
T3 - Proceedings - International Conference on Software and System Process, ICSSP 2016
SP - 26
EP - 35
BT - Proceedings - International Conference on Software and System Process, ICSSP 2016
T2 - International Conference on Software and System Process, ICSSP 2016
Y2 - 14 May 2016 through 15 May 2016
ER -