Making students read and review code
Proceedings of the 5th annual SIGCSE/SIGCUE ITiCSEconference on Innovation and technology in computer science education
The quarks of object-oriented development
Communications of the ACM - Next-generation cyber forensics
Misunderstandings about object-oriented design: experiences using code reviews
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Student attitudes and motivation for peer review in CS2
Proceedings of the 42nd ACM technical symposium on Computer science education
Code inspections: a web crawler exercise for students
Journal of Computing Sciences in Colleges
Peer code review in open source communitiesusing reviewboard
Proceedings of the ACM 4th annual workshop on Evaluation and usability of programming languages and tools
Hi-index | 0.00 |
In computer science, students could benefit from exposure to critical programming concepts from multiple perspectives. Peer review is one method to allow students to experience authentic uses of the concepts in a non-programming manner. In this work, we examine the use of the peer review process in early, object-oriented, computer science courses as a way to develop the reviewers' knowledge of object-oriented programming concepts, specifically Abstraction, Decomposition, and Encapsulation. To study these ideas, we used peer review exercises in two CS2 classes at local universities over the course of a semester. Using three groups (one reviewing their peers, one reviewing the instructor, and one completing small design or coding exercises), we measured the students' conceptual understanding throughout the semester with concept maps and the reviews they completed. We found that reviewing helped students learn Decomposition, especially those reviewing the instructor's programs. Overall, peer reviews are a valuable method for teaching Decomposition to CS2 students and can be used as an alternative way to learn object-oriented programming concepts.