Project 2 Design
Due Date
- 11:59pm, Saturday, March 4, 2006
- No late designs accepted
- NOTE: The design is due on Saturday so that the TAs can
return comments to you more quickly.
Objective
The objective of this assignment is to make sure that you begin thinking
about your project in a serious way early. This will not only give you
experience doing design work, but will help you anticipate the number of
hours that you'll need to set aside to be able to complete the project.
A new component to the design is a preliminary component of the final
project, to get you writing code the first week and not waiting until the
second week. You should actually submit 100% WORKING code, not just an
attempt at working code.
The Assignment
Your design assignment is broken down into two parts.
Classes
You are required to turn in the following:
- Class Headers - You must submit the entire class header material
for all three required classes. These must include appropriate function
header comments including pre- and post-conditions.
- Class Implementation - You must submit the entire implementation for
the MazeCell class. As encouraged in the project description, implement this
class and test it with your entire program to ensure that everything still
works.
Test Program
You are required to turn in the following:
- Test main for MazeCell - You must submit a main() function that
appropriately tests each of the methods of your main class. It should build
a (or several) MazeCell(s), run each method, and check every return value or
change to a parameter. Your test main should run every line in your MazeCell
class (100% line coverage).
A template for your design document, p2design.txt,
is provided in Ms. Wortman's public directory. Copy that file
/afs/umbc.edu/users/d/a/dana3/pub/CMSC202/p2/p2design.txt
to your local directory and fill in the necessary information.
Submit your modified p2design.txt file to complete this assignment.
Grading
You will receive feedback from a TA on your design within a few days of turning
it in. This will give you an opportunity to address either design
or coding flaws before turning in the project.
Your p2design.txt file will be compared to the header file or files that you
submit when Project 2 is due. Minor changes or those suggested by your TA,
to the design are allowed. A minor change might be changing the way in
which one or two parameters are passed or even the removal, splitting or
addition of one function.
If there are major changes between the design document and the header files
that are part of the final project, you will lose 5 points, unless those
changes were suggested by your TA. This would indicate that you didn't
give sufficient thought to your design before beginning the implementation.
Your p2design.txt file will count as 10% of your project 2 grade
(part of the Correctness). If this file is not submitted by its due date,
or if you submit a new version after its due date, you will lose all 10 points.