Improving Student Comprehension of Programming Components within Large Code Bases
University Of California-San Diego, La Jolla CA
Investigators
Abstract
This project aims to serve the national interest by preparing computer science students for a career in software development. Decades of research has uncovered an “academia-industry gap” in which new graduates are under-prepared for the task of contributing to large, existing code bases in the software industry. To make graduates job ready, and to help fill the urgent need for qualified software developers, the tech industry has been recommending to universities that students be taught how to work on large code bases. The goal of this project is to develop a high-impact course that teaches students how to work on large code bases, that can be adopted by other institutions, and taught to a broad student population. Students’ comprehension of programming components in large code bases is not only under-researched but also overlooked in many upper-division computing courses. This project will be grounded in two relevant theories—the Block Model (a program comprehension theory) and Cognitive Apprenticeship (a teaching and learning theory)—to 1) advance our understanding of how students comprehend large code bases and 2) design a course that imparts program comprehension skills to students. The NSF IUSE: EDU Program supports research and development projects to improve the effectiveness of STEM education for all students. Through its Engaged Student Learning track, the program supports the creation, exploration, and implementation of promising practices and tools. This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
View original record on NSF Award Search →