Semester Project


This document describes the semester project for the course. Students should work on a project in teams of 2-4 people. (Arguments will be entertained for a single person project, but in general, this is discouraged.) Expectations will be adjusted according to group size. Remember, we talked about successful InfoVis projects requiring a combination of skills and expertise. Form teams accordingly.

The idea of the project is to take the knowledge and background that you are learning this semester about Information Visualization and put it to good use in a new, creative effort. A real key to the project, however, is to select a data set that people will find interesting and intriguing. Even better would be to select a data set with a clearly identified set of "users" or "analysts" who care deeply about that data. Select a topic that people want to know more about! I cannot emphasize strongly enough the importance of your topic and data set. Use sketches and other low-effort ways to think through how ideas for different datasets. Remember interaction, and the questions that users of the data have (and even questions that your team has of the data). Think about the suite of data visualizations that the NY Times has created over the past few years, a few examples of which are listed below:


No matter what topic you choose, I am expecting a high-quality project. This project accounts for a majority of your grade in this course, and will require a significant amount of time and effort. In particular, I'm seeking creative projects showcasing interesting ideas. A good project should consist of visualization designs and a software artifact that implements the designs. Interaction is key in information visualization, and it is difficult to understand the interaction issues in your project without a running system. I am explicitly not expecting user testing and evaluation. Ideally, I would like your efforts to be innovative and to result in some form of potential publication to similar venues and styles as the papers that we have read throughout the semester.

You are free to choose any software development environment and graphics/visualization support library that you want in order to help build your system. Consider developing a system that is web-deployable so that your system can be shown to everyone in the world! Some of the toolkits and libraries will be covered in a lecture during class. You are free to choose other appropriate alternatives. If your team would like to pick a framework that was not covered during the course, please get it approved by the professor prior to starting any code.

You will have five main milestones or deliverables.
First, you must form your team and settle on a topic. Pick your dataset, your questions that the visualization will help you (and others) answer, your visualization libraries.

Second, we will hold a poster session in class in which you can display your different design ideas to get feedback.

Third, and shortly after the poster session, you will submit a detailed design document.

Fourth, you will give a demonstration of your project to the instructor and TA during the last week of classes. Note: the details of this demonstration are still being worked out. Instead of a demo to the instructor and the TA, we may organize a “demo session” where we invite local industry, other GT faculty and students, etc. to showcase what you all have done. This will help publicize your work, and help you network with other professionals in your area.

Finally, you will produce a short video (6 minutes or less) that explains your system and shows it in action, and you will accompany the video by a short tutorial descriptive document. If members of your team are interested in pursuing a publication from this work, you can continue to work with the professor on producing a paper to submit to an appropriate venue (e.g., IEEE VIS, ACM UIST, ...).

Important Milestones (5) and Due Dates
[1] Sep 15 - (10%) Initial project description. 1-2 page document listing project members and describing topic to be addressed and data sources/formats. You should address the following questions: What is the problem being addressed? Who would be interested in understanding this data better? Where is the data coming from and what are its characteristics? Make sure to describe the data and its attributes in detail.

[2] Oct 8 - (10%) Poster session. Display a number of different design ideas for your problem in class. I am not looking for glossy, glitzy posters here. Instead, I want to see a variety of design ideas sketched out well enough so that other people can understand them and provide feedback and comments. These posters must be printed and brought to class the on Oct. 8 for the poster session. For information on where to get your poster printed, please see the post in T-Square.

During the class period, Alex and I will walk around to each of the posters and "grade" them, via talking with each of you about your projects. In particular, we will be looking to see how you have addressed the concerns we had from Milestone 1.

Remember, the point of these posters is to show your design idea in a scientific way. Think about the discussions we've had in class. Are you using the guidelines? If so, which ones? How is your data structured? What are the variables? What type are each? How are you handling that? How are you binding these to visual encodings? In what metaphor? Are you using a single view, or multiple views (and why)? Etc.

During this class period, it is important that your team members be present. At minimum, one team member MUST be present, with a good reason for the others not being there.

[3] Oct 22 - (35%) Project design document. Provide more detail (than the initial project description) about the purpose of the visualization system, who the users will be, and what data will drive the visualization. Describe the data attributes in detail. Next, show different designs for your problem, leveraging the work that you did for the poster session. Briefly explain the ideas behind each design. Finally, based on your work-to-date and feedback from the poster session, describe the design (or combination of design ideas) that you are leaning toward at this point in the process. (After this point you will settle on a design, and we will provide feedback to help with that.)

Format:
No page limit. However, you are allowed 2500-3500 words.
10pt font, double-spaced lines

General Outline:
Project Overview (~1-2 pages)
Describe the general purpose. What is the problem being solved? What is the motivation for solving it? What background is necessary to understand why this is an important problem? What prior work exists? Why is this a visualization problem, and not one that can just be computed/solved/ML/... This section should be primarily prose. 

Users, Tasks, and Data (~2-3 pages)
Describe the users and how they will use the system. Who is your intended user? How will the project benefit them? What tasks do they need to accomplish, and how does your system help support these tasks? What data are you using? How “big” is it (think observations and dimensions/attributes)? If you do this correctly, you should be able to refer to these tasks in later sections when explaining your designs. This section should be primarily prose, but may contain a few explanatory figures.

System Designs (~5-6 pages)
What designs have you explored and presented in the poster session, and what did you learn from the feedback? What was the rationale behind your initial designs? What strengths were identified, and what weaknesses? How are you encoding (visually) the data to allow users to perform their task? This section should contain several figures for your designs and explanatory text justifying the rationale for each.

Design Intent (~2-4 pages)
What is your current intended design? How did the feedback from the poster session lead you this design? What will you need to build to make this happen (e.g., database, web content)? How is this work distributed among your team members?

[4] Dec 1 (, week of) (20%)- Project demonstration. Each team will meet with the instructor and TA to demo their system and describe what they have done. You will need to bring two copies of a short tutorial document to the demo session. The document should be a few pages long and include the following items: team member names, problem description (1-2 paragraphs), screen shots of the user interface, brief description of the visualization and how it works, and a link to the web page for running the system, if applicable.

[5] Dec 9 (by 8:00pm) - (25%) System video. Create a 6 minute or less video that illustrates the capabilities and example use of your system. Provide a link to the file or the actual video file itself. Use .mov or .mp4 format.

Grading
We will evaluate the overall quality of your project, including all milestones and components. The midway project design document will be worth 35% of the total grade on the project. It is important that you make progress on the project quickly. This is doubly beneficial as it allows more time for your implementation.

The following questions will be important during that evaluation and grading process.
• Does the system work, ie, does it read in the data and present an interactive visualization of the data? Notice, I’m not asking for a bug-free, commercial piece of software. However, functionality that is demonstrated for the purpose of the system should be functional.
• Is the visualization an effective representation of the data? Is it based on the fundamentals discussed in this course. Even better, does it challenge some of those fundamentals and advance the science?
• Does the visualization support different analytical questions about the data? What are these questions that you intend the users of your system to ask?
• Is the visualization creative and does it illustrate some new ideas? (While it is not necessary to invent some new visualization technique for the project, designs that illustrate creativity and new thinking will generally be viewed positively. Of course, innovation cannot be a total substitute for utility.)
• Was your demonstration an effective presentation and illustration of your project and work? Presenting your work is important. Practice, as a group, before your presentation.
• Does your video illustrate your system and its use well? Does it explain the problem and solution well enough so that a person unfamiliar with the project can appreciate your contribution?

Tips for a Successful Project
It is extremely important to select an interesting problem with data that some group of people will care deeply about. I cannot stress enough how vital it is to start with interesting data. Find some topic that almost everyone cares about (e.g., baby names, feature films, traffic in Atlanta, flight delays, the stock market, weather, etc. -- THERE’S DATA ALL AROUND YOU!) or that some subset of people really care about (e.g., sports data, politics, etc.). Consider combining different data sets to produce a new composite data set of special interest. Such a fusion of data often creates a dataset that people want to learn about. Remember that this often takes time and effort to “fuse” multiple data types, so you want to make sure you pick them wisely (i.e., they should be in support of the questions that you want people to be able to answer using your tool). You may need to take a few weeks of the semester where you simply focus on data acquisition and parsing. That's OK. If you do not have your data nailed down by the poster session then you will be in deep trouble.

Most of the really successful projects of the past from class have been in one of two styles:

In the first style, the group created a visualization system that has only one view/representation but this representation is new and creative. Here, you should focus on designing an innovative new visual representation. The actual user interface may have different components or pieces, but it should be tightly integrated. The real focus here is on creativity and innovation, and the novel representation of the information. These projects emphasize the mappings between the data (and characteristics/variables of the data) to visual encodings, glyphs, and metaphors.

The second type of successful project employs multiple coordinated views where each view may use some well-known visualization techniques, perhaps customized a little for this problem. The emphasis in this type of project is to create a sound, functional system implementation that clearly can be of help for data analysis and understanding. It is important in this type of project to have coordinated views that work well together and provide different perspectives on the data. This type of project does not have the same level of visualization innovation as the first, but it comes together in a strong system implementation, including well-designed user interactions that allow users to explore the data and and progress through their task to answer the questions they may have of the data.

Tips for an Unsuccessful Project
Ways to create a poor project include having each group member go off on their own and implement a different view, where the views have relatively little to do with each other. Systems like this usually have an interface where the user picks one of the views, and then that view takes over the window or screen. I don't consider this to be a very good example of an effective information visualization. Also, starting late usually results in a visualization that falls short of the true value of vis - helping people think about their data. It is likely the case that multiple revisions of a visualization are needed to produce a solid contribution/project. Your first time visualizing your dataset in your InfoVis application will likely result in your team asking a swarm of questions about the data (because you’re seeing your data!). Ignoring these questions (due to lack of time, or otherwise) typically leads to poor projects.

Not preparing your presentation well. If we cannot tell what your contribution is, or what your project did, it is unlikely we will be able to give it a high grade.