1. Comparing pre-commit reviews and post-commit reviews using process simulation
- Author
-
Tobias Baum, Arthur Brack, Fabian Kortum, Kurt Schneider, and Jens Schauder
- Subjects
Code review ,Heuristic ,Management science ,Process (engineering) ,Computer science ,business.industry ,020207 software engineering ,Context (language use) ,02 engineering and technology ,Commit ,computer.software_genre ,Task (project management) ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Discrete event simulation ,business ,computer ,Software ,Agile software development - 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.
- Published
- 2017
- Full Text
- View/download PDF