CSC 404/504: Program Monitoring and Visualization

Professor: Clinton Jeffery
Office: JEB 237, 885-4789 E-mail: jeffery@cs.uidaho.edu
Meets: MWF 1:30-2:20PM, JEB 026, Harbor Center 128
Web: http://www2.cs.uidaho.edu/~jeffery/courses/monvis/
Texts: "Program Monitoring and Visualization", by Jeffery
references and technical reports from Unicon.org
selected research papers (links on class webpage)

Course Description

This course studies how to observe (in software) and graphically depict the dynamic behavior of program executions. The course will present topics in software instrumentation, static and dynamic analysis, graphic design, visualization, and algorithm animation. The current state of the art in the literature will be examined. Students will develop 2D and 3D program visualization tools in an experimental environment.

Course Organization

This course will have several small units with short assignments designed to teach specific topics, followed by a semester project in which you will build a usable, and hopefully useful, program visualization tool. Assignment turnins will be accompanied by short presentations of your work in class. The semester project will be worked on individually or in pairs.

Grading

Each unit will comprise approximately 20% of your grade. For each unit, 70% of your grade will be based on your implementation, 20% on your documentation, and 10% on your in-class presentation and discussion. The last two units (thus, 40% of your grade) will revolve around a semester project.

Policy Statements

Assignments will not be accepted late; turn in what you have on the due date, even if it is incomplete. Attendance of class periods is required. You may discuss assignments and code examples with classmates. If you work together on an assignment, turn in a single copy with both names on it; more will be expected of teams than of individuals: more and better code, more documentation, more depth to your work.