Visualization Project

A major component of this course will be the execution of a term project. Potential project types include the design and demonstration of a new visualization, a case study involving the visualization of actual data for a specific purpose, the construction of an interactive tool for a novel type of data exploration, or in-depth evaluation of an existing tool or technique. Projects will have a client who influences project goals and requirements. Students may request a project from a list of suggested projects

Projects will be done by teams of approximately five students. All members of a project team will receive the same grade on the project, except in extraordinary circumstances. Team members will be required to complete a peer evaluation of their teammates. If you have any concerns about your team dynamics, though, don't wait for the peer evaluation to express them. You are encouraged to discuss any issues first with your team and then with the instructor (if internal discussions don't resolve the issues to your satisfaction).

There are a variety of visualization packages and tools available for use on your projects. In general, packages have different strengths and weaknesses, as well as special purpose functionality in some. Selection of a package (or the decision to use none) is at the discretion of the team, though the course instructor is available for consultation on package selection. A few projects will be best suited for implementation directly on a graphics library such as OpenGL, rather than as part of a package. The Construction assignment is intended to help you choose an appropriate development platform.

Dr. desJardins' course page for CMSC 601: Research Skills for Computer Scientists contains many resources useful for various phases of this project (look in the Handouts/Links column). Tamara Munzner's page on writing InfoVis papers is also a great resource.


Projects will be structured as a sequence of phases. Completion of one phase is not required for initiation of the next. In most cases, it will benefit you to be working on multiple phases at the same time. For instance, you might be working on the implementation of an initial prototype concurrently with searching and reviewing the relevant literature. Unless otherwise indicated (by the word "individual"), deliverables are one per team.


Describe your plans to meet these requirements in a proposal of approximately 1-2 pages. Your proposal should describe: Individual reflections are also due on the proposal. Submit your proposal as a pdf document by email to the instructor.

Annotated Bibliography and Revised Proposal

Revise your proposal in response to instructor suggestions. Review the literature describing other approaches to problems similar to yours, as well as research on which you will base your approach. Describe how the approach taken in related work is similar to and different from yours. Include complete references for all papers cited. Your annotated bibliography will become the basis for part of your final paper. Correct spelling and grammar count, so check them before you hand anything in. Additional information about writing annotated bibliographies can be found at Submit your biblio and revised proposal as a pdf document by email to the instructor.

Alpha Release

Your initial implementation goal is to produce any visualization of your data. Your representation and interaction techniques will not be nearly as refined as you plan to make them, but you should be able to read in a data set and produce an image showing some representation of the quantities of interest. Submit a pdf document by email to the instructor containing an image and short description (about a page) of what the image shows and how it was produced.

Beta Release

By beta release, your project should be a complete prototype with all of the functionality that you have proposed. The design and functionality of your system should be described in a 3-4 page pdf document which will ultimately become part of your final paper. Your beta release document should include by a short description of bugs you plan to fix and enhancements you plan to make. The third phase of the development effort will center on refinements of your prototype. Come to class ready to give a five-minute demonstration to the whole class of the functionality of your prototype, as well as a more detailed demonstration to your assigned project team. Schedule a demo and meeting with your client and the course instructor within one week of the beta release date in order to present your beta release and discuss a revision plan. Submit your beta report as a pdf document by email to the instructor. Individual reflections are also due on the beta release.

Beta Review

Students enrolled in 636 will complete a review of the beta release of another team, according to the provided rubric. Submit your beta review as a pdf document by email to the instructor.

Paper Draft Review

Students enrolled in 636 will complete reviews of the draft papers of two other team, using the the provided form. Submit your paper draft review as a pdf document by email to the instructor.


Prepare a technical poster about your project. An example poster template can be found here . Submit your poster as a pptx document by email to the instructor.


Present a 15 minute presentation of your project. Your presentation should be professional enough to give at a technical conference (e.g. organized approach, prepared slides, a short demo or video if appropriate). Invite your client to your presentation and/or schedule a private demo. Dress appropriately for a technical conference. Be prepared to answer questions. Submit your presentation slides by email to the instructor.

Final Release

Refine and enhance your prototype into a final release. You should attempt to respond to all requests of your client and the course instructor. Your final release should include: Individual reflections are also due on the whole project.


Write an nine page technical paper describing your project in the style of an IEEE Visualization Technical Paper (other formats may be acceptable with pre-approval). Sections you should plan to include are: abstract, introduction, related work (adapt your annotated bibliography for this), implementation, results, future directions, and references. Your paper should include figures and images as appropriate. A complete draft of your paper, including figures and images, must be submitted by the draft deadline. Your draft should be a complete paper that is as strong and polished as you can make it. Aim for something that you believe is ready for submission to a conference or journal. The course instructor and selected fellow students will serve as reviewer for these papers and make suggestions as to how they might be improved. You may submit earlier, not necessarily complete, drafts of your paper if you would like feedback earlier in the writing process. Correct spelling and grammar count in all submitted work, so check them before you hand anything in. Submit your final paper as a pdf document by email to the instructor.


Each phase of the project has a due date. In this way, as in others, this project mimics work in the real world. For each deadline, the due time is 10am (ie, before the beginning of class).
Phase Due Date
Proposal Sept. 21
Alpha Release Oct. 3
Annotated Bibliography and Revised ProposalOct. 5
Beta Release Nov. 16
Beta Review Nov. 28
Paper Draft Nov. 30
Poster Dec. 5
Draft Review Dec. 5
Presentation Dec. 12
Final Release Dec. 12
Paper Dec. 12

Contributions to Grade

Each phase of the project will make an individual contribution to your grade. If a phase is missed, that portion of the grade will be a zero. You should consider this a compelling reason to start your project early and work steadily throughout the semester, rather than making a grand push at the end of the semester.
Phase Percent of Final Grade
Proposal 5
Annotated Bibliography 5
Alpha Release 5
Beta Release 5
Beta Review 5 (for those in 634)
Poster 5
Draft Review 5 (for those in 634)
Presentation 5
Final Release 10
Paper 10
Total for Project 50