CS 338: Graphical User Interfaces

Project Stage 1: Idea & Description

(10 pts out of total 100 pts for the project)

Due Tuesday, February 10, at the start of class

Email PDF file to professor by class time


The class project is a half-term individual project that allows you to design and implement a sophisticated, useful, and fun user interface. In Stage 1, you will decide on a project idea and write up a description of your idea. In Stage 2, you will discuss your interface design and implementation plan with fellow students for evaluation and revision. In Stage 3, you will complete the implementation of your project and demonstrate it to the class in special class session.

Project Idea

First, you need to decide on a project idea that you would like to work on. You should note the following as you work out an idea:

You will receive feedback on your project idea from the instructor after submitting Stage 1, and also from your fellow students at Stage 2. If you have any questions about the appropriateness of your idea, please email the TA and/or the professor for comments and suggestions.

Project Description

Create a 1-page description for your project as follows:

(1) Come up with a catchy title for your project, likely including a system name and a catchy phrase that describes what it does -- e.g., "The Emblogulator: Brillig for Slithy Toves that Gyre and Gimble in the Wabe" (though yours should make sense! :))

(2) Write one paragraph (5 sentences minimum) describing the users of the system. This should expand on potential persona(s) of people intended to use the system, what are their goals for using the system, and what constraints may come into play (both limitations of the user and constraints on the task itself).

(3) Write one paragraph (5 sentences minimum) about the system itself. This should not be an interface sketch/design at this point (since we will do this in Stage 2); instead, it should be a description of what the user is able to do with the system to achieve their goals.

Please note that we will revise this description into an advertisement in the final stage of the project, at which point we will include screen shots, make it look more appealing, etc. But this first description will allow you to think creatively about the problem you'd like to solve and how you intend to approach this from the users' point of view.

Project Plan

On a separate attached page, write up a project plan that covers the remaining four-week period of the project. The first of the four weeks will be spent on Stage 2 sketching the interface design and receiving evaluations and suggestions from fellow students. In subsequent weeks, you should describe, in as much detail as possible, what aspects of the project you plan to implement.

You should make special note of two things in your plan: (1) besides the GUI, what other code needs to be developed? (e.g., data structures and a database related to information in your project); and (2) are you using any special packages, etc. (e.g., Java Speech API), and if so, when do you plan to integrate this into your system?


Please email your materials (1-page description, 1-page project plan) as a single PDF file to the professor before the start of class. Please make sure the first page include your name and email address.


The description will be graded for clarity of writing, thought-out and interesting description of users and system, and comprehensiveness and feasibility of the project plan.

General Note

As always, your work in this assignment should be your own. It's a good idea not to do the same project as your best buddies in class -- try something different!