With support from the NSF Improving Undergraduate STEM Education Program: Education and Human Resources (IUSE: EHR), this project aims to serve the national interest by improving computer science education. To achieve this goal, the project will identify misunderstandings that arise when students reason about code and develop strategies to overcome these misunderstandings. The project will focus on using automated analysis to teach students how to use mental execution and/or tracing to predict the execution behavior of program code, one of the most basic and important objectives of computing education. The ability to trace through a segment of code to understand its behavior is central to learning how to write new programs, as well as to reason about, debug, and improve existing programs. The best programmers can predict behavior on specific inputs, and extend their reasoning to generalized inputs, developing an abstract, broad understanding. This project seeks to identify the aspects of automated methods that are most effective in identifying and overcoming learning obstacles associated with students' reasoning about software code.<br/><br/>This project has two objectives. First, it aims to understand the learning obstacles students face in tracing code on specific, concrete inputs, and the obstacles they ultimately face in generalizing that reasoning to abstract, symbolic inputs. Second, the project aims to understand why these obstacles arise and how they can be overcome. To collect and analyze information about student reasoning, as well as to provide student feedback, the project will develop an online reasoning tutor that can capture and respond to students' choices, written explanations, and verbal explanations. These online reasoning tutors will be used in conjunction with other instructional strategies to support development of students' abilities to reason about code. To enable the findings to be broadly applicable to all students, the research will include diverse student populations. The effort involves Clemson University, a large land-grant public institution, Florida Atlantic University, an HSI, and Howard University, an HBCU. The evaluation effort is led through Rose-Hulman. Computing is fundamental to the nation's society and commerce. To become successful computing professionals, student programmers need to develop the debugging and reasoning skills that are the focus of this project. The NSF IUSE: EHR Program supports research and development projects to improve the effectiveness of STEM education for all students. This is an Engaged Student Learning project; through the Engaged Student Learning track, the IUSE: EHR program supports the creation, exploration, and implementation of promising practices and tools.<br/><br/>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.