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 条
  • [31] MODEL FOR TEACHING COMPUTER ARCHITECTURE AND OPERATING SYSTEMS.
    Gonzalez Jr., Mario J.
    1977, : 4 - 5
  • [32] Secure Code Recommendation Based on Code Review Result Using OWASP Code Review Guide
    Damanik, Venia Noella Nanisura
    Sunaringtyas, Septia Ulfa
    2020 5TH INTERNATIONAL WORKSHOP ON BIG DATA AND INFORMATION SECURITY (IWBIS 2020), 2020, : 157 - 161
  • [33] Support for Secure Code Execution in Unix-Like Operating Systems
    Bhuse, Vijay
    Nandigam, Jagadeesh
    PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON CYBER WARFARE AND SECURITY (ICCWS 2017), 2017, : 40 - 47
  • [34] Structured Linux Kernel Projects for Teaching Operating Systems Concepts
    Laadan, Oren
    Nieh, Jason
    Viennot, Nicolas
    SIGCSE 11: PROCEEDINGS OF THE 42ND ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2011, : 287 - 292
  • [35] Experience with An Incremental Approach to Teaching Single Processor Operating Systems
    Vichare, Abhijat
    PROCEEDINGS OF 2016 INTERNATIONAL CONFERENCE ON LEARNING AND TEACHING IN COMPUTING AND ENGINEERING (LATICE 2016), 2016, : 162 - 166
  • [36] Research on the Teaching Method of Process Synchronization of Computer Operating Systems
    Wang, Jiuru
    Han, Lihua
    Wang, Xiaojie
    Zuo, Yulong
    PROCEEDINGS OF THE 2015 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING, 2015, 17 : 369 - 374
  • [37] Creation of a Serious Game For Teaching Code Review: An Experience Report
    Ardic, Baris
    Yurdakul, Irem
    Tuzun, Eray
    2020 IEEE 32ND CONFERENCE ON SOFTWARE ENGINEERING EDUCATION AND TRAINING (CSEE&T), 2020, : 204 - 208
  • [38] A Review of Cognitive Support Systems in the Operating Room
    Zhang, Zhong Shi
    Wu, Yun
    Zheng, Bin
    SURGICAL INNOVATION, 2024, 31 (01) : 111 - 122
  • [39] Is Kernel Code Different From Non-Kernel Code? A Case Study of BSD Family Operating Systems
    Kudrjavets, Gunnar
    Thomas, Jeff
    Nagappan, Nachiappan
    Rastogi, Ayushi
    2022 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2022), 2022, : 211 - 222
  • [40] Using an electronic product code network to improve monitoring systems for continuous operating equipment - a thermal power plant example
    Chang, S-Y
    Li, D-C
    Chen, T-L
    PROCEEDINGS OF THE INSTITUTION OF MECHANICAL ENGINEERS PART B-JOURNAL OF ENGINEERING MANUFACTURE, 2010, 224 (B9) : 1437 - 1445