Analyzing student coding data can help researchers understand how novice programmers learn and inform practitioners on how to best teach them. This work explores how using static analysis tools in programming assignments can provide insight into student behavior and performance. The use of three static analysis tools in the assignments of an introductory programming course have been analyzed. Our findings confirm previous work by Edwards et al. [18] that formatting and documentation issues are the most common issues found in student code, that this is constant regardless of major and performance in the course, and that there are certain error types correlated with performance more than others. We also found that total error frequency in the course correlates with final course grade and that the presence of any kind of error in final submissions correlates with low performance on exams. Furthermore, we found females to produce less documentation and style errors than males and students who partner to produce less errors in general than students working alone. Our results also raise concerns on the use of certain metrics for assessing the difficulty of fixing errors by students.
Key words: Introductory programming, CS1, static analysis, automated feedback, coding style, gender differences.
|