English
Related papers

Related papers: Code Review in the Classroom

200 papers

Code review is one of the primary means of assuring the quality of released software along with testing and static analysis. However, code review requires experienced developers who may not always have the time to perform an in-depth review…

Software Engineering · Computer Science 2025-08-01 Shweta Ramesh , Joy Bose , Hamender Singh , A K Raghavan , Sujoy Roychowdhury , Giriprasad Sridhara , Nishrith Saini , Ricardo Britto

Generative artificial intelligence poses new challenges around assessment, increasingly driving introductory programming educators to employ invigilated exams. But exams do not afford more authentic programming experiences that involve…

Computers and Society · Computer Science 2024-11-19 Suhas Kannam , Yuri Yang , Aarya Dharm , Kevin Lin

The automatic generation of source code is one of the long-lasting dreams in software engineering research. Several techniques have been proposed to speed up the writing of new code. For example, code completion techniques can recommend to…

Software Engineering · Computer Science 2023-02-09 Matteo Ciniselli , Luca Pascarella , Emad Aghajani , Simone Scalabrino , Rocco Oliveto , Gabriele Bavota

Teaching agile software development by pairing lectures with hands-on projects has become the norm. This approach poses the problem of grading and evaluating practical project work as well as process conformance during development. Yet, few…

Software Engineering · Computer Science 2018-09-05 Christoph Matthies , Thomas Kowark , Matthias Uflacker , Hasso Plattner

Most attention in K-12 artificial intelligence and machine learning (AI/ML) education has been given to having youths train models, with much less attention to the equally important testing of models when creating machine learning…

Computers and Society · Computer Science 2023-12-15 L. Morales-Navarro , M. Shah , Y. B. Kafai

Learning to code, and more broadly, learning about computer science is a growing field of activity and research. Under the label of computational thinking, computational concepts are increasingly used as cognitive tools in many subject…

Computers and Society · Computer Science 2020-05-11 Hannah M. Dee , Jordi Freixenet , Xavier Cufi , Eduard Muntaner Perich , Valentina Poggioni , Marius Marian , Alfredo Milani

Peer assessment is an efficient and effective learning assessment method that has been used widely in diverse fields in higher education. Despite its many benefits, a fundamental problem in peer assessment is that participants lack the…

Computers and Society · Computer Science 2015-06-19 Yanqing Wang , Yaowen Liang , Luning Liu , Ying Liu

Educating students from diverse disciplinary backgrounds is challenging. In this article, we report on our interdisciplinary course coding interaction and design (Coding IxD), which is designed for computer science and design students…

Human-Computer Interaction · Computer Science 2022-05-06 Peter Sörries , Judith Glaser , Claudia Müller-Birn , Thomas Ness , Carola Zwick

Novice programmers benefit from timely, personalized support that addresses individual learning gaps, yet the availability of instructors and teaching assistants is inherently limited. Large language models (LLMs) present opportunities to…

Computers and Society · Computer Science 2025-10-07 Griffin Pitts , Anurata Prabha Hridi , Arun-Balajiee Lekshmi-Narayanan

Static analysis tools are frequently used to scan the source code and detect deviations from the project coding guidelines. Given their importance, linters are often introduced to classrooms to educate students on how to detect and…

Software Engineering · Computer Science 2023-07-20 Eman Abdullah AlOmar , Salma Abdullah AlOmar , Mohamed Wiem Mkaouer

Feedback is one of the most crucial components to facilitate effective learning. With the rise of large language models (LLMs) in recent years, research in programming education has increasingly focused on automated feedback generation to…

Computers and Society · Computer Science 2025-09-05 Niklas Scholz , Manh Hung Nguyen , Adish Singla , Tomohiro Nagashima

Automated grading systems, or auto-graders, have become ubiquitous in programming education, and the way they generate feedback has become increasingly automated as well. However, there is insufficient evidence regarding auto-grader…

Computers and Society · Computer Science 2025-07-22 Adam Zhang , Heather Burte , Jaromir Savelka , Christopher Bogart , Majd Sakr

CodEval is a code evaluation tool that integrates with the Canvas Learning Management System to automatically evaluates students' work within a few minutes of the submission. This early feedback allows students to catch and correct problems…

Computers and Society · Computer Science 2022-11-23 Aditi Agrawal , Archit Jain , Benjamin Reed

Decision-making is a key software engineering skill. Developers constantly make choices throughout the software development process, from requirements to implementation. While prior work has studied developer decision-making, the choices…

Software Engineering · Computer Science 2023-01-25 Jenny T. Liang , Maryam Arab , Minhyuk Ko , Amy J. Ko , Thomas D. LaToza

Block-based programming languages like Scratch enable children to be creative while learning to program. Even though the block-based approach simplifies the creation of programs, learning to program can nevertheless be challenging.…

Software Engineering · Computer Science 2021-08-16 Florian Obermüller , Lena Bloch , Luisa Greifenstein , Ute Heuer , Gordon Fraser

The authors present the results of a simple usability test performed on line_explorer, an innovative tool aimed at letting students explore programming. The system offers an interactive environment where students can learn, review, and…

Computers and Society · Computer Science 2017-11-16 Giovanni Vincenti , Scott Hilberg , James Braman , Michael Satzinger , Lily Cao

There are often multiple ways to implement the same requirement in source code. Different implementation choices can result in code snippets that are similar, and have been defined in multiple ways: code clones, examples, simions and…

Software Engineering · Computer Science 2020-06-16 Venkatesh Vinayakarao , Devika Sondhi , Sumit Keswani , Rahul Purandare , Anita Sarma

The automation of code review has been tackled by several researchers with the goal of reducing its cost. The adoption of deep learning in software engineering pushed the automation to new boundaries, with techniques imitating developers in…

Software Engineering · Computer Science 2024-01-11 Rosalia Tufano , Ozren Dabić , Antonio Mastropaolo , Matteo Ciniselli , Gabriele Bavota

Although peer code review is widely adopted in both commercial and open source development, existing studies suggest that such code reviews often contain a significant amount of non-useful review comments. Unfortunately, to date, no tools…

Software Engineering · Computer Science 2018-07-13 Mohammad Masudur Rahman , Chanchal K. Roy , Raula G. Kula

Data-driven programming feedback systems can help novices to program in the absence of a human tutor. Prior evaluations showed that these systems improve learning in terms of test scores, or task completion efficiency. However, crucial…

Computers and Society · Computer Science 2022-08-11 Preya Shabrina , Samiha Marwan , Andrew Bennison , Min Chi , Thomas Price , Tiffany Barnes