
Computer Science 275.001
Interaction Programming
Fall 2006
Interactive Design
Programming Assignment #3
Due: Tuesday, November 14, 2006
(Due in drop-box by 1:00 PM)
(zipped version of previous assignment)
In this interactive design assignment, you will extend the routing application that you implemented in your previous design assignment to include the enhancements that your design and implementation were supposed to take into account. Specifically:
·
In
addition to the block-by-block directions provided to the user in the previous
design and implementation, this version of the application must also be able to
provide landmark-based instructions (e.g., “turn right at the McDonald’s”,
“across the street from Target”) whenever possible. One possibility would be to
mention every landmark that is encountered along the route, paying particular
attention to landmarks that are at intersections at which the route turns a
corner.
·
In
addition to the text-based directions, this version of the application must
also be able to provide the user with an overhead map that illustrates the
route from the user-specified origin to the user-specified destination. Keep in
mind that, as much as possible, your design and implementation should not rely
on the particular database information that’s being used here.
·
In this
version of the application, the user must be allowed to permanently add new
landmarks to the database, specifying their names, addresses, types of
business, business hours, and, if they exist, their associated logo images.
This functionality should include error-checking to ensure that the
user-specified addresses of these new landmarks make sense (i.e., that the
street numbers correspond to legitimate addresses according to the street table
and that the address is not already in use by another landmark in the landmark
table).
The
expanded database and the expanded folder of images corresponding to the
landmark locales are on the department server at:
Engineering/Classes/Fall
2006/CS/CS275/Assignments/IDPA3
Note that this database has a form identical to what was used in the second design assignment, but with several additional landmarks included in the landmark table. If the enhancements required here were adequately considered during the previous assignment, then those enhancements should be relatively straightforward to implement.
As usual,
you are strongly encouraged to bring early versions of your design to the
instructor for feedback. You may also feel free to discuss your early design
ideas with your classmates, but remember that showing your actual code to
anyone besides the instructor is considered academic misconduct and will
be dealt with as such. Also, remember to fully document your program,
explaining your design as needed.
Remember that
your entire project folder is due on your drop-box
by 1:00 PM on Tuesday,
November 14, 2006.