05-830, User Interface
Software, Spring, 1997
Homework 4, Start: February
17,
1997
Due: Mon, March 10
Homework 5, Start: March 10,
1997
Due: Wed, April 2
Homework 6, Start: April 2, 1997
Due: Mon, April
28
Implement a Benchmark Task
Using Different Tools
Choose one of the following benchmarks:
See the discussion about the
benchmarks.
Choose a Tool to Implement the Benchmark
For Homeworks 4 and 5 you can use any tool you want that is a
"full-featured" tool for building "real" user interfaces. Some possible
choices are:
- Microsoft Foundation Classes (MFC) for Windows
- OLE
- Macintosh Toolbox (low-level calls)
- Apple's and CI Lab's OpenDoc
- Java AWT
- MetroWorks PowerPlant for Macintosh
- Tcl/Tk
- InterViews
- Fresco
- Motif and X/11
- Visix's Galaxy
- XVT
- 3D environments like Open Inventor
- ... or another tool of your choice, with permission of the instructor.
Most of these are available on the various cluster machines.
For Homework 6, you should use the
Amulet toolkit.
Implement the Benchmark Task using the Tool
The contents of your report should cover the sames kinds of information
as last time. The following repeats the instructions from Homework
3.
There are many things you will need to keep track of while you are
learning the tool and while implementing the benchmark.
Be sure to read over the questions listed below that you will need to answer
in
your report to see what you need to pay attention to! In particular,
be sure to keep track of:
- Time spent reading the documentation for the tool.
- What specific references you used to learn about the tool (names of books
or manuals, on-line documentation, etc.). Be sure to include complete
references.
- Exact amount of time spent doing the implementation.
- Please try to be quite accurate in timing how long this takes.
- During the implementation, keep track of how much time is spent:
- Thinking about the design.
- Actually typing in the code.
- Using interactive layout tools to draw parts of the interface.
- Going back to the documentation to look up things and figure out how
to do things.
- Debugging code to make it work.
- The amount of code written to make this benchmark work:
- For interactive tools, please count the number of lines of code
in the scripting language you had to type in.
- For example, the number of lines of Visual Basic code, or the number
of lines of Lingo.
- It might be helpful to print out the project and count them on the hardcopy.
- It would also be useful to have a count of the number of objects
created interactively.
- For example, how many objects were drawn with the editor?
Note that it may be impossible or very difficult to implement
the entire benchmark in the tool. In this case,
don't. You are only supposed to spend about 25 hours trying
to do this assignment. Be sure to discuss this in your report.
Write a report about the implementation experience
Your report should preferably be in html of if not, in plaintext,
because we will make all the information available to the whole class.
You must include some screen shots of your program, preferably in
gif format,
but any other format will be fine. Please turn in hardcopy (printout)
of all the following:
- A written report discussing all the points below.
- A code listing or printout of the code for your system.
- Screen dumps of the screens produced by your implementation.
You should also place all of these on /afs/ or on the WWW and
tell me the address, or else turn in a floppy containing all of these and
put on the floppy your name and whether it is in PC or Mac format.
Be sure your report includes the information listed on the
benchmark questions
page.
For the Final Paper (the fourth implementation; Homework 6),
please also add a discussion comparing and contrasting the various
toolkits that you used, including the good and bad features of each tool.
Is it possible to make a tool that includes all the good features?
How?
Prepare an Oral Presentation to give in class on the assigned day
You should prepare a 5 minute presentation discussing the benchmark
and the tool you used.
Each homework is worth 14% of your grade in the course.
Back to 05-830 main page