Learning to Assess Software Quality: A Metric-Guided Peer Code Review Tool for Large-Scale Software
Software engineers must be able to create software that is not only correct, but of high quality. Consequently, computer science educators must emphasize software design principles and give students timely, accurate feedback on code quality. Prior work has shown that peer code review can effectively reinforce software design principles while providing timely feedback at scale; however, most existing tools have been designed primarily for introductory courses. This paper presents the design and evaluation of EvOwl, a peer code review tool tailored to upper-level software engineering courses. EvOwl includes novel features that are designed with large-scale and long-term projects in mind, such as support for using code coverage to focus students' attention on specific features within a large code base and a metric-guided approach to help students compare software quality across different implementations.