Programming: For a programming project, you will implement a visualization system of your own. You may use existing components as the base for your system. Note that research novelty is not a requirement for a course project. The four common varieties of programming projects are:
Analysis: For an analysis project, you will pick an application domain to address, and write a combination survey/analysis paper about it. No serious programming is required, so this option is suitable for non-CS students. You will include a detailed survey of previous work in the area. This survey should be more considerably detailed than the required previous work section in the programming project writeup. You will pick one or more existing software tools to to analyze a dataset from that domain, so no serious programming is required. (You may need to write some scripts to change data formats, however.) The analysis should analyze the strengths and weaknesses of those tools, and discuss in detail whether they are effective for the task that you have chosen.
Survey: For a survey paper project, you will need to read
many papers in a particular domain and write up a detailed survey.
Talk to me for more details. Again, the writeup will be much longer
than for a programming project, and this option is particularly
suitable for non-CS students. This project type must be done solo,
rather than in a team.
There are pointers to datasets, and software packages/toolkits that you might use to build your
final project on the Resources
page.
Pitch examples:
2019,
2017 Fall,
2017,
2015
Your
proposal should be based on an idea that we've discussed and I've
approved. When you come talk to me about your proposal, I'll give you
some pointers to background reading in the area of your interest.
You need to meet me before Fri Nov 1 at 5pm. While I can sign off on some
projects after only a single meeting, some people/groups have needed two or
three meetings to find an appropriate project that gets approved.
One proposal per project is due on
Mon Nov 3 by 10pm, by uploading the PDF into Canvas.
In addition to the structure expectations here, I strongly recommend that you read the relevant section of the final
report expectations below to understand more about what you will do,
before writing the proposal.
You're submitting a proposal, not a specification - it's natural that
your plans will change somewhat as you refine your ideas.
The key is to find some domain and task
that both interests you and presents an opportunity for infovis. That
is, there is some task where a human needs to understand the structure
of a large dataset. You're definitely welcome to link the infovis
project to another class or research project; do be careful to be
specific about the scope of your infovis class project compared to the
other work that may occur before, after, or during it. That's
especially crucial when one team member has been working on something
for a while and is joined by other people on the team.
You may also build on
existing software, but your project should include some implementation
work of your own if it is a programming project. The scope of what you
attempt will depend on your goals: some people actively want to learn
the low-level details of a toolkit like D3 and will "roll their own";
others want to use one or more layers of
libraries in order to build something more ambitious than
what's possible when doing all the coding from scratch.
Proposal format: your writeup should be at least two pages and
include:
You will present the results of your project with both a presentation
and a written report. The final presentations are two weeks into the
of the exam period; there is no exam. The report is due 3 days later.
Showing live demos of your software in action is encouraged in the
final presentation. If you are giving a demo, be sure to practice in
advance so that you don't run over your time slot, and make sure to
have screenshots (or video) prepared as backup in case of problem.
The reports should be at least 6-8 pages of text (programming) or
14-18 pages (analysis and survey), and should include many screenshots of your
running software (programming and analysis). There is no length restriction, feel free to use as
much space as you need for images.
Your final report should be a standalone document that
fully describes your project. Do not assume the reader has seen your
original proposal or any of your presentations. It should have both the structure and form of a
conference paper (with a few exceptions, as below). Use the latest InfoVis conference
templates. Pay attention to my writing correctness and
style guidelines.
You are required to submit a teaser image showcasing your project
(normally, a screenshot) that is suitable for a medium-sized thumbnail
image for the projects web page.
You are encouraged but not required to also submit a
supporting video, with or without voiceover. You are encouraged but
not required to make your project available as open source. You are
encouraged but not required to have a live demo of your project posted
publicly.
A good article on technical writing is The Science
of Scientific Writing Gopen and Swan, American Scientist (Nov-Dec
1990), Volume 78, 550-558.
Your code should be packed up as well. You must include a README file at the root giving a brief roadmap/overview of the organization of what you're handing in: which parts are your code, which parts are libraries, and so on. It should also state how to compile and run the program.
I do not necessarily expect that your software compiles on my machine if you developed for a different platform, but I want to see what you've done.
Below are sample outlines for papers for each kind of project, based
on my experience in marking a mix of strong and weak papers in past
offerings of the course. This structure is halfway between a
suggestion/guideline and a requirement. The requirement part is that I
do expect you to include at least the material that I indicate.
The suggestion part is that you may also include other material as
well (for example, as additional sections), and you may choose
alternative structures (for example, different ordering). Feel free to
consult with me for advice if you're wondering about the pros and cons
of different writeup structures.
The first outline of design studies is the most detailed - in the other three I
don't repeat all the relevant information, but instead focus on how
they differ structurally from this common case.
A few examples of particularly strong projects/papers from previous
courses:
Note that the writeup instructions for courses before 2014 were
somewhat different: although there was still emphasis on analysis and
abstraction, there was not the requirement of following the book's
analysis framework (since it wasn't out yet).
Software
The language and platform for your project is your choice. You will
submit your code along with to your final report, but I do not
necessarily expect it to compile on my own machine.
Milestones
There will be multiple milestones along the way, with a mix of written
submissions and in-class workshopping/critiques.
Pitches
You will briefly pitch your project idea(s) to the whole class. You'll
have just 3 minutes each - like the proverbial elevator
pitch, but in a really slow elevator... Slides are required. These pitches will give you (and me) have situational awareness
of what other people are thinking of working on. You might find
project partners, either because you find somebody else interested in
what you care about, or you're more intrigued by a new idea than your
previous plan. You must rehearse ahead of time to get your timing
down! Pitch slides are due by 1pm on pitch day (Tue Oct 15) as
PDF. You cannot use your own laptop, I'll compile them together on
mine.
Meetings
Groups need to be finalized by Fri Oct 25 5pm at latest.
You must meet with me in person to discuss your project at
least once before submitting a proposal. It may take more than one
meeting for me to sign off that you're ready to move on to the
writeup stage.
Proposals
A scenario spells out what a user
would have to do and what he or she would see step-by-step in
performing a task using a given system. The key distinction
between a scenario and a task is that a scenario is
design-specific, in that it shows how a task would be
performed if you adopt a particular design, while the task
itself is design-independent: it's something the user wants to
do regardless of what design is chosen.
Peer Project Reviews
There will be two peer project review sessions, on Nov 19 and Dec 3.
Final Presentations/Reports
The final presentations will be the afternoon of Tue Dec 10, TBD (maybe 1-5pm).
Refreshments will be served and the entire CS department
will be invited (typically a dozen or so folks show up). Slides are
required, and do include slide numbers.
Final presentation length: 15 min present (+ 1-2 min questions)
for team projects, 12 min present (+ 1-2 min questions) for individual projects
Final paper format: PDF
Code format: tar/gzip/zip package
Sample Outlines
Example Past Projects
Here's the complete set of projects from previous years, to help you
judge scope and consider possibilities:
Back to 547 Home
Tamara Munzner
Last modified: Tue Sep 10 02:41:43 2019