Date of Award


Degree Type


Degree Name

Doctor of Philosophy


Computer Science

Major Professor

Bradley T. Vander Zanden

Committee Members

Lynne E. Parker, James S. Plank, Christopher H. Skinner


In this dissertation, we developed and tested a sketching, visualization, and simulation tool called Sketchmate for demonstrating graph algorithms commonly taught in undergraduate computer science courses. For this research, we chose to focus on shortest path and network flow algorithms. Two versions of this tool have been implemented: 1) an instructor tool that supports computer-aided manual simulations of algorithms that augment traditional whiteboard presentations, allowing lectures to be more dynamic and interactive, and 2) a student tool that supports computer-aided manual practice of algorithms that enables students to work through homework problems more quickly while providing detailed incremental feedback about their performance and about how to solve a problem when they get stuck. Previous algorithm simulation systems have essentially forced instructors to narrate an algorithm as though they were describing an automated set of slides. In contrast, our tool allows instructors to manually manipulate attributes of a graph as they demonstrate an algorithm.

A set of experiments was conducted using the tools. The results for the student tool showed that there was no statistically significant difference in test score improvement between Sketchmate and paper and pencil students, although they did show that Sketchmate students scored roughly one letter grade higher than paper and pencil students. Based on survey data, the students preferred using the tool to using paper and pencil. The results of the experiment involving the instructor tool showed that although there was no statistically significant difference in learning between Sketchmate and the whiteboard, both the instructor and the students preferred a Sketchmate lecture to a whiteboard lecture.

Files over 3MB may be slow to open. For best results, right-click and select "save as..."