A New Visualization for Refactorings in Pull Requests: Proposal and Preliminary Evaluation
Resumo
Code review is a fundamental activity in collaborative software development and is commonly performed through Pull Requests (PRs) on GitHub. Refactoring consists of rewriting code without changing its external behavior, improving its internal quality. In PRs, refactorings are typically presented in traditional diff-based interfaces as added and removed lines, making their intent difficult to understand. Consequently, reviewers must mentally reconstruct the performed transformations, increasing cognitive effort and potentially impacting review effectiveness. To address this gap, we envisioned RavnCR (Refactoring Aware VisualizatioN for Code Review), an approach that aims to improve the understanding of refactorings during PR reviews through refactoring identification and specialized visualizations. RavnCR aims to extend the traditional GitHub review interface by explicitly highlighting refactoring-related changes while preserving the familiar review workflow. To validate RavnCR’s proposed visualization, we performed a preliminary quali-quantitative study involving developers with experience in code review. The evaluation assessed the approach’s usability, effectiveness, and efficiency. Participants reported that the visualization made the refactorings more explicit, helped them identify and interpret the structural code changes, and made the review process faster and more intuitive. However, some visual elements, especially color-based highlights, require further refinement to reduce ambiguity and improve developer experience.
Palavras-chave:
Developer Experience, Code Review, Refactoring
Referências
Alberto Bacchelli and Christian Bird. 2013. Expectations, outcomes, and challenges of modern code review. In 2013 35th international conference on software engineering (ICSE). IEEE, 712–721.
Aaron Bangor, Philip T Kortum, and James TMiller. 2008. An empirical evaluation of the system usability scale. Intl. Journal of Human–Computer Interaction 24, 6 (2008), 574–594.
Simone Diniz Junqueira Barbosa, Bruno Santana da Silva, Milene Selbach Silveira, Isabela Gasparini, Ticianne Darin, and Gabriel Diniz Junqueira Barbosa. 2021. Interação Humano-Computador e Experiência do Usuário. Autopublicação.
Rodrigo Brito and Marco Tulio Valente. 2021. RAID: Tool Support for Refactoring-Aware Code Reviews. In 2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC). 265–275. DOI: 10.1109/ICPC52881.2021.00033
John Brooke et al. 1996. SUS-A quick and dirty usability scale. Usability evaluation in industry 189, 194 (1996), 4–7.
Panuchart Bunyakiati and Usa Sammapun. 2019. Open-Source Projects and their Collaborative Development Workflows. arXiv preprint arXiv:1909.00642 (2019).
Fabian Fagerholm and Jürgen Münch. 2012. Developer experience: Concept and definition. In 2012 international conference on software and system process (ICSSP). IEEE, 73–77.
Martin Fowler. 1999. Refactoring: Improving the Design of Existing Code (1 ed.). Addison-Wesley Professional.
GitHub. 2026. Reviewing proposed changes in a pull request. [link]
Stephanie Houde and Charles Hill. 1997. Chapter 16 - What do Prototypes Prototype? In Handbook of Human-Computer Interaction (Second Edition) (second edition ed.), Marting G. Helander, Thomas K. Landauer, and Prasad V. Prabhu (Eds.). North-Holland, Amsterdam, 367–381. DOI: 10.1016/B978-044481862-1.50082-0
International Organization for Standardization. 2018. ISO 9241-11:2018 Ergonomics of human-system interaction – Part 11: Usability: Definitions and concepts. International Organization for Standardization, Geneva, Switzerland.
Zarina Kurbatova, Vladimir Kovalenko, Ioana Savu, Bob Brockbernd, Dan Andreescu, Matei Anton, Roman Venediktov, Elena Tikhomirova, and Timofey Bryksin. 2021. Refactorinsight: Enhancing ide representation of changes in git with refactorings information. In 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE.
André N Meyer, Earl T Barr, Christian Bird, and Thomas Zimmermann. 2019. Today was a good day: The daily life of software developers. IEEE Transactions on Software Engineering 47, 5 (2019), 863–880.
Jakob Nielsen. 1993. Usability Engineering. Academic Press.
Daniel Oliveira, Wesley K.G. Assunção, Alessandro Garcia, Ana Carla Bibiano, Márcio Ribeiro, Rohit Gheyi, and Baldoino Fonseca. 2023. The Untold Story of Code Refactoring Customizations in Practice. In Proceedings of the 45th IEEE/ACM International Conference on Software Engineering (ICSE). IEEE/ACM.
Alicia Paiva. 2026. Replication Package. DOI: 10.5281/zenodo.21879661.
Fabio Palomba, Andy Zaidman, Rocco Oliveto, and Andrea De Lucia. 2017. An Exploratory Study on the Relationship between Changes and Refactoring. In Proceedings of the 25th IEEE/ACM International Conference on Program Comprehension (ICPC). 176–185. DOI: 10.1109/ICPC.2017.38
Abdul Razzaq, Jim F. Buckley, Qin Lai, Yun Ting, and Goetz Botterweck. 2024. A Systematic Literature Review on the Influence of Enhanced Developer Experience on Developers’ Productivity: Factors, Practices, and Recommendations. Comput. Surveys (2024). DOI: 10.1145/3687299
Beatriz Santana, Lidivânio Monteiro, Bianca Santana de Araújo Silva, Glauco Carneiro, Sávio Freire, José Amancio Macedo Santos, and Manoel Mendonça. 2024. Psychological Safety in Software Workplaces: A Systematic Literature Review. (2024).
Danilo Silva, Nikolaos Tsantalis, andMarco Tulio Valente. 2016. Whywe refactor? confessions of github contributors. In Proceedings of the 2016 24th acm sigsoft international symposium on foundations of software engineering. 858–870.
Marcos Gênesis da Silva. 2022. CIREF: uma ferramenta para visualização do contexto histórico de fatorações em projeto java. (2022).
Ian Sommerville. 2011. Engenharia de Software (9 ed.). Pearson Prentice Hall, São Paulo.
Miriam Walker, Leila Takayama, and James A Landay. 2002. High-fidelity or low-fidelity, paper or computer? Choosing attributes when testing web prototypes. In Proceedings of the human factors and ergonomics society annual meeting, Vol. 46. Sage Publications Sage CA: Los Angeles, CA, 661–665.
Aaron Bangor, Philip T Kortum, and James TMiller. 2008. An empirical evaluation of the system usability scale. Intl. Journal of Human–Computer Interaction 24, 6 (2008), 574–594.
Simone Diniz Junqueira Barbosa, Bruno Santana da Silva, Milene Selbach Silveira, Isabela Gasparini, Ticianne Darin, and Gabriel Diniz Junqueira Barbosa. 2021. Interação Humano-Computador e Experiência do Usuário. Autopublicação.
Rodrigo Brito and Marco Tulio Valente. 2021. RAID: Tool Support for Refactoring-Aware Code Reviews. In 2021 IEEE/ACM 29th International Conference on Program Comprehension (ICPC). 265–275. DOI: 10.1109/ICPC52881.2021.00033
John Brooke et al. 1996. SUS-A quick and dirty usability scale. Usability evaluation in industry 189, 194 (1996), 4–7.
Panuchart Bunyakiati and Usa Sammapun. 2019. Open-Source Projects and their Collaborative Development Workflows. arXiv preprint arXiv:1909.00642 (2019).
Fabian Fagerholm and Jürgen Münch. 2012. Developer experience: Concept and definition. In 2012 international conference on software and system process (ICSSP). IEEE, 73–77.
Martin Fowler. 1999. Refactoring: Improving the Design of Existing Code (1 ed.). Addison-Wesley Professional.
GitHub. 2026. Reviewing proposed changes in a pull request. [link]
Stephanie Houde and Charles Hill. 1997. Chapter 16 - What do Prototypes Prototype? In Handbook of Human-Computer Interaction (Second Edition) (second edition ed.), Marting G. Helander, Thomas K. Landauer, and Prasad V. Prabhu (Eds.). North-Holland, Amsterdam, 367–381. DOI: 10.1016/B978-044481862-1.50082-0
International Organization for Standardization. 2018. ISO 9241-11:2018 Ergonomics of human-system interaction – Part 11: Usability: Definitions and concepts. International Organization for Standardization, Geneva, Switzerland.
Zarina Kurbatova, Vladimir Kovalenko, Ioana Savu, Bob Brockbernd, Dan Andreescu, Matei Anton, Roman Venediktov, Elena Tikhomirova, and Timofey Bryksin. 2021. Refactorinsight: Enhancing ide representation of changes in git with refactorings information. In 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE.
André N Meyer, Earl T Barr, Christian Bird, and Thomas Zimmermann. 2019. Today was a good day: The daily life of software developers. IEEE Transactions on Software Engineering 47, 5 (2019), 863–880.
Jakob Nielsen. 1993. Usability Engineering. Academic Press.
Daniel Oliveira, Wesley K.G. Assunção, Alessandro Garcia, Ana Carla Bibiano, Márcio Ribeiro, Rohit Gheyi, and Baldoino Fonseca. 2023. The Untold Story of Code Refactoring Customizations in Practice. In Proceedings of the 45th IEEE/ACM International Conference on Software Engineering (ICSE). IEEE/ACM.
Alicia Paiva. 2026. Replication Package. DOI: 10.5281/zenodo.21879661.
Fabio Palomba, Andy Zaidman, Rocco Oliveto, and Andrea De Lucia. 2017. An Exploratory Study on the Relationship between Changes and Refactoring. In Proceedings of the 25th IEEE/ACM International Conference on Program Comprehension (ICPC). 176–185. DOI: 10.1109/ICPC.2017.38
Abdul Razzaq, Jim F. Buckley, Qin Lai, Yun Ting, and Goetz Botterweck. 2024. A Systematic Literature Review on the Influence of Enhanced Developer Experience on Developers’ Productivity: Factors, Practices, and Recommendations. Comput. Surveys (2024). DOI: 10.1145/3687299
Beatriz Santana, Lidivânio Monteiro, Bianca Santana de Araújo Silva, Glauco Carneiro, Sávio Freire, José Amancio Macedo Santos, and Manoel Mendonça. 2024. Psychological Safety in Software Workplaces: A Systematic Literature Review. (2024).
Danilo Silva, Nikolaos Tsantalis, andMarco Tulio Valente. 2016. Whywe refactor? confessions of github contributors. In Proceedings of the 2016 24th acm sigsoft international symposium on foundations of software engineering. 858–870.
Marcos Gênesis da Silva. 2022. CIREF: uma ferramenta para visualização do contexto histórico de fatorações em projeto java. (2022).
Ian Sommerville. 2011. Engenharia de Software (9 ed.). Pearson Prentice Hall, São Paulo.
Miriam Walker, Leila Takayama, and James A Landay. 2002. High-fidelity or low-fidelity, paper or computer? Choosing attributes when testing web prototypes. In Proceedings of the human factors and ergonomics society annual meeting, Vol. 46. Sage Publications Sage CA: Los Angeles, CA, 661–665.
Publicado
11/09/2026
Como Citar
PAIVA, Alicia; PAIXAO, Matheus; SILVA, Adriely; TIMBÓ, Victor; SANTOS, Alysson Diniz dos; CHAGAS, Matheus.
A New Visualization for Refactorings in Pull Requests: Proposal and Preliminary Evaluation. In: WORKSHOP DE VISUALIZAÇÃO, EVOLUÇÃO E MANUTENÇÃO DE SOFTWARE (VEM), 14. , 2026, São Paulo/SP.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2026
.
p. 103-109.
DOI: https://doi.org/10.5753/vem.2026.32967.
