Code Review as Decision-Making -- Building a Cognitive Model from the Questions Asked During Code Review
Lo Gullstrand Heander, and Emma S\"oderberg, and Christofer Rydenf\"alt

TL;DR
This paper develops a cognitive model of code review based on decision-making processes, revealing how developers navigate review phases and make decisions, with implications for improving review tools and practices.
Contribution
It introduces the CRDM model, linking code review to recognition-primed decision-making, based on ethnographic analysis of real review sessions.
Findings
Code review involves two main phases: orientation and analysis.
Developers make multiple decisions, such as commenting, testing, and verifying results.
The cognitive process resembles recognition-primed decision-making, informing better tool design.
Abstract
Code review is a well-established and valued practice in the software engineering community contributing to both code quality and interpersonal benefits. However, there are challenges in both tools and processes that give rise to misalignments and frustrations. Recent research seeks to address this by automating code review entirely, but we believe that this risks losing the majority of the interpersonal benefits such as knowledge transfer and shared ownership. We believe that by better understanding the cognitive processes involved in code review, it would be possible to improve tool support, with out without AI, and make code review both more efficient, more enjoyable, while increasing or maintaining all of its benefits. In this paper, we conduct an ethnographic think-aloud study involving 10 participants and 34 code reviews. We build a cognitive model of code review bottom up…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
