Project Propsal - Phase I
Proposal: Due Monday, November 29
First Demo (10 points):
Monday, December 6
in the lab session
Final Demo :
Monday, December 13
in the lab session
Extra Credit Demo :
can be scheduled until
Thursday, December 16
Writeup Due Thursday, December 16
CS 5551, Fall Semester, 2010
For Phase I of the project, turn in a proposal of what you will be
doing for your project. If you are just going to modify the "draw"
program, a sentence saying that is enough. If you are going to do
something different, write a very short paragraph describing your
project (the hard part is getting the right level of difficulty --
not too easy or too ambitious). Be sure to include your
NOTE: You can email your proposal to the TA
(and you can submit it early!).
I am not going to require a complete design, but I have listed
below the design steps that I have required for similar projects
in the past. You should read these over (and maybe actually do
some of them) before implementing your project.
In the past, most people have added features to the draw program,
as suggested in the
page. However, others have done
different projects, such as the ones listed below:
Possible alternative projects:
- One student in a past offering of the course built an interactive
graph editor -- you could place vertices in the drawing area and
specify edges between them; and remove edges and vertices.
- Design a 1- or 2-person game or puzzle. Some possible examples of
games would be checkers, ordinary or 3D or n-Dimensional tic-tac-toe,
Othello (Reversi), battleship, etc.
- Add a graphical user interface to an existing program that doesn't have
one, such as a program you wrote for another course.
- Enhance the draw program to draw repeating patterns.
You may work in groups of 1, 2 (if you have 2 people in your group,
I expect your project to be larger/more refined); there will be just
one report per group.
Turn in: (2 points) a description of your project
- don't forget your name(s).
NOTE: You do not have to go through the following "Design Steps"
(as you would for a real interactive program), but please read through
Here are six steps to design a user interface -- as outlined in one
user interface text:
- Define the problem
As mentioned, this part is often the most difficult. The main idea is to
provide a program that allows the user to define and edit a scene
of simple graphical objects -- e.g.: for the purpose of designing
advertising, designing a logic gate circuit, a polygon "editor",
a graph (nodes, edges) editor, or designing a system/organization
flowchart, or ?? (you or your group can decide the emphasis).
- Model the operator
You may assume that the operator is like you: computer literate,
but not so familiar with the domain concepts (this will depend on
which project you choose).
- Perform task analysis
The main task in the draw program will be editing: adding
objects is easy, deleting them is hard (erasing is somewhat easier),
draw will maintain a database of objects -- so reading in a
previously created drawing (database description) and saving a
drawing to a file will be other tasks (already done for the
original version of the program).
- Defining Computer objects and functions that correspond to
the task domain
- make correspondence between task objects and computer
objects (the drawing corresponds to the data structure
representing it; an add_rectangle procedure corresponds to
the task of adding a rectangle), and divide computer objects
into semantic & syntactic categories
- provide general computer services (decide which ones, if
any that you will provide -- justify not providing the
ones listed in the text if you don't provide them -- e.g.
too hard, or not appropriate to this application)
- decide who drives the interaction
- Designing the user interface
Address the following issues:
- choose interaction objects (pushbuttons, menus, etc.)
- decide on how to make the system state explicit to the user
- Evaluate the design
This should go on concurrently with the first 5 steps.
Page URL: http://www.d.umn.edu
Page Author: Doug Dunham
Last Modified: Monday, 22-Nov-2010 17:11:09 CST
Comments to: email@example.com