Teaching Operating Systems Using Code Review

被引:7
|
作者
Daii, Christoffer [1 ]
Nieh, Jason [1 ]
机构
[1] Columbia Univ, Dept Comp Sci, New York, NY 10027 USA
关键词
Operating Systems; Code Review; Instructional Tools;
D O I
10.1145/2538862.2538894
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Learning about operating systems often involves modifying a large and complex code base. Grading student projects can be difficult and time consuming, yet students often do not learn from their programming errors and struggle to understand core operating system concepts. We present GradeBoard, a code review system designed to simplify grading for instructors and enable students to understand and learn from their errors. GradeBoard provides an easy-to-use Web interface that allows instructors to annotate student code submissions with grading comments and scores, and students to discuss the comments and scores with instructors. GradeBoard presents student code changes with syntax highlighting and lets users collapse or expand code sections to provide a desired level of context, making it easier to read and understand student programming project submissions. Comments and scores are easily identifiable by visual cues, improving interaction between instructors and students. We have deployed and used GradeBoard in a large operating systems course involving Linux kernel programming projects. GradeBoard provided robust, easy-to-use functionality for reviewing Linux kernel code changes, improved the instructional staff grading experience, and over 90% of students surveyed indicated that GradeBoard improved their understanding of the kernel programming projects better than other alternatives.
引用
收藏
页码:549 / 554
页数:6
相关论文
共 50 条
  • [1] Teaching Operating Systems Using Android
    Andrus, Jeremy
    Nieh, Jason
    SIGCSE 12: PROCEEDINGS OF THE 43RD ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2011, : 613 - 618
  • [2] The Impact of Teaching Operating Systems using Two Different Teaching Modalities
    Buckley, Ingrid A.
    INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS, 2020, 11 (12) : 9 - 15
  • [3] Open System for Teaching Operating Systems by Using a Simulator
    La Red Martinez, David Luis
    Fabian Rodriguez, Nelson
    CAMPUS VIRTUALES, 2013, 2 (02): : 142 - 150
  • [4] Resources for Teaching Operating Systems: A Survey of Instructors and a Literature Review
    Ebling, Maria R.
    ACM TRANSACTIONS ON COMPUTING EDUCATION, 2024, 24 (04):
  • [5] On the Challenge of Sound Code for Operating Systems
    Klimt, Jonathan
    Kroening, Martin
    Lankes, Stefan
    Monti, Antonello
    PROCEEDINGS OF THE 12TH WORKSHOP ON PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, PLOS 2023, 2023, : 83 - 90
  • [6] Teaching Operating Systems with Ruby
    Sheehan, Robert
    ITICSE 2007: 12TH ANNUAL CONFERENCE ON INNOVATION & TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, 2007, : 38 - 42
  • [7] Teaching the process of code review
    Stalhane, T
    Kutay, C
    Al-Kilidar, H
    Jeffery, R
    2004 AUSTRALIAN SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2004, : 271 - 278
  • [8] Teaching Code Review Management using Branch Based Workflows
    Krusche, Stephan
    Berisha, Mjellma
    Bruegge, Bernd
    2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C), 2016, : 384 - 393
  • [9] Teaching Operating Systems Using Virtual Appliances and Distributed Version Control
    Laadan, Oren
    Nieh, Jason
    Viennot, Nicolas
    SIGCSE 10: PROCEEDINGS OF THE 41ST ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2010, : 480 - 484
  • [10] Teaching Operating Systems Concepts with SystemTap
    O'Brien, Darragh
    ITICSE'17: PROCEEDINGS OF THE 2017 ACM CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, 2017, : 335 - 340