CS 691J - Spring '96
Topics in Object-Oriented Technology
When: Friday 9:00-11.30AM
Where: ACIV 006
Instructors: Enrico Gobbetti and Charles Nicholas
Group Pages
Here are the pages maintained by each group.
To our students: if your group is not listed here, establish a group
page and send a mail to your instructors as soon as possible. If you
are not part of any of this groups, you are in big troubles... (Click
here to
send us a mail).
Possible design projects
Topics discussed in class:
- Graphical user interface toolkit. We'd like this toolkit to
support undo/redo operations, and we want to see some sort of
framework to use the toolkit. Since Java and Eiffel both already have
standard toolkits, we'd want to see something different from those.
One variation could involve the design of a text editor (like JOT) to
run on top of the GUI toolkit.
- Board game, e.g. checkers. There are a number of games related
to checkers, such as "Give Away" and "Fox and Geese" that use the same
board, pieces, but with different rules. A library for building games
similar to checks may be ok. (Chinese checkers would also work :-)
- Adventure game, textual or graphical. (A MOO might qualify.)
- OO Metrics. The idea is to have the students build a document
processing tool to extract information from OO source code (like
number of parents per class, number of features per class, number of
parameters per feature, ...) so that the tool can be adapted to
process different languages (Eiffel, Java). Part of the project could
involve designing (or stealing) an OO version of LEX/YACC.
- Computer Math/Computer Algebra
- Simulation.
Design Project Milestones
- On February 16, we'll pass around a sign-up sheet that will let
people sign-up for one of the various design teams.
- By February 23, each group will have met at least once. We want
each group to maintain a Web page on their project, which will be kept
up-to-date as their project evolves. Send e-mail to Enrico or Charles
with the URL for the project homepage as soon as soon as you have
established it. The project homepage will list
the team members and their e-mail addresses. (Use of the mailto tag
is optional.) Here is a template
for the project's Web page.
- On March 1, we plan to devote class time to team meetings.
Enrico and Charles will visit the different groups to see how things are
going. By this time your group will probably have met several times.
- On March 8, the teams will make short presentations to the rest
of the class. These talks will last 20-30 minutes each, including
questions from the rest of the class.
- Later in the semester, probably April 26 and May 3, we'll have
another round of presentations in which groups will present their
(more or less) complete design. Well-developed components of the
design may be selected for implementation in Eiffel, Java, or other
languages to be studied.