作者: Jaime Spacco , Jaymie Strecker , David Hovemeyer , William Pugh
关键词: Database schema 、 Software repository 、 Static analysis 、 Automated programming 、 Marmoset 、 Snapshot (computer storage) 、 Software evolution 、 Code evolution 、 Software engineering 、 Computer science
摘要: Most computer science educators hold strong opinions about the "right" approach to teaching introductory level programming. Unfortunately, we have comparatively little hard evidence effectiveness of these various approaches because generally lack infrastructure obtain sufficiently detailed data novices' programming habits.To gain insight into students' habits, developed Marmoset, a project snapshot and submission system. Like existing systems, Marmoset allows students submit versions their projects central server, which automatically tests them records results. Unlike also collects finegrained code snapshots as work on projects: each time student saves her work, it is committed CVS repository.We believe collected by will be rich source learning program software evolution in general. To validate our tool, performed an experiment found statistically significant correlation between warnings reported static analysis tool failed unit tests.To make fine-grained more useful, present schema variety useful queries easily formulated answered.