Barriers for Students During Code Change Comprehension
Justin Middleton, John-Paul Ore, Kathryn T. Stolee
Abstract
Modern code review (MCR) is a key practice for many software engineering organizations, so undergraduate software engineering courses often teach some form of it to prepare students. However, research on MCR describes how many its professional implementations can fail, to say nothing on how these barriers manifest under students' particular contexts. To uncover barriers students face when evaluating code changes during review, we combine interviews and surveys with an observational study. In a junior-level software engineering course, we rst interviewed 29 undergraduate students about their experiences in code review. Next, we performed an observational study that presented 44 students from the same course with eight code change comprehension activities. These activities provided students with pull requests of potential refactorings in a familiar code base, collecting feedback on accuracy and challenges. This was followed by a reection survey. Building on these methods, we combine (1) a qualitative analysis of the interview transcripts, activity comments, and reection survey with (2) a quantitative assessment of their performance in identifying behavioral changes in order to outline the barriers that students face during code change comprehension. Our results reveal that students struggle with a number of facets around a program: the context for review, the review tools, the code itself, and the implications of the code changes. These ndings -along with our result that student developers tend to overestimate behavioral similarity during code comparison -have implications for future support to help student developers have smoother code review experiences. We motivate a need for several interventions, including sentiment analysis on pull request comments to ag toxicity, scaolding for code comprehension while reviewing large changes, and behavioral ding to contrast the evolution of syntax and semantics. CCS CONCEPTS • Software and its engineering ! Software evolution; Software development process management; • General and reference ! Empirical studies.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers1
Ask how each one uses itBuilds on4
- Predicting developers' negative feelings about code reviewCarolyn D. Egelman, Emerson R. Murphy-Hill, Elizabeth Kammer, Margaret Morrow Hodges et al.ICSE 2020 · 50 citations
- Destructive Criticism in Software Code Review Impacts InclusionSanuri Dananja Gunawardena, Peter Devine, Isabelle Beaumont, Lola Piper Garden et al.CSCW 2022 · 27 citations
- SLACC: simion-based language agnostic code clonesGeorge Mathew, Chris Parnin, Kathryn T. StoleeICSE 2020 · 21 citations
- First come first served: the impact of file position on code reviewEnrico Fregnan, Larissa Braz, Marco D'Ambros, Gül Çalikli et al.FSE 2022 · 16 citations
Related papers
- Breaking the Alphabet: Rethinking File Ordering in Code ReviewMd Shamimur Rahman, Zadia Codabux, Chanchal K. RoyICSE 2026
- Understanding the impact of GitHub suggested changes on recommendations between developersChris Brown, Chris ParninFSE 2020 · 18 citations
- Do Words Have Power? Understanding and Fostering Civility in Code Review DiscussionMd Shamimur Rahman, Zadia Codabux, Chanchal K. RoyFSE 2024 · 6 citations
- Code Review of Build System Specifications: Prevalence, Purposes, Patterns, and PerceptionsMahtab Nejati, Mahmoud Alfadel, Shane McIntoshICSE 2023 · 8 citations
- On the Relationship between Code Verifiability and UnderstandabilityKobi Feldman, Martin Kellogg, Oscar ChaparroFSE 2023 · 2 citations
