{'fraction_non_alphanumeric': 0.019138755980861243, 'fraction_numerical': 0.0, 'mean_word_length': 5.301204819277109, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Applying Project-based Learning to Improve Computer Networks Courses: An Experience Report

Project-based learning (PjBL) has been increasingly adopted in computer science courses to improve students’ engagement and learning outcomes. Although a computer networks course is in great need of a PjBL course module, no such module is available due to the huge gap between PjBL’s design requirements and the current structure and content of the course. This paper introduces a novel PjBL module for a computer networks course, which challenges the students with a real world problem of developing the communication system for a smart lock. Following the PjBL design principles, we devise several scaffolding activities and assignments, which can be integrated into a semester-long computer networks course. We test ran the PjBL module in both undergraduate- and graduate-level computer networks courses. Our preliminary evaluation results show that the proposed PjBL module is well received by the students and helps improve their learning outcomes.