CMSC 201
Design of Project Three

KENO

Out: Monday 4/1/02
Due: Before Midnight, Sunday 4/07/02

The Purpose

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.

The Assignment

Design project three, using top down design. Try to minimize coupling and maximize cohesion when designing your functions.

What to Turn In

  1. You are to write the function prototypes for each of the functions you plan to have in your project. For this exercise, you must include the names of the parameters in the prototypes, not just their types. Each prototype should have a full function header comment above it as shown in the C Coding Standards and with a description of what the function does.

  2. In addition to the prototypes, you should have one large comment that consists of two or three paragraphs explaining your design. This explanation should be sufficient so that one of the lecturers could draw a diagram of function calls from it (like the one we did in class for project 1).

  3. Since we are now working with data structures, you should include the structure definition that you will be using in your project and also discuss any arrays you'll be using and how they are being used.

This design document is to be a plain text file created using a text editor. Do NOT use a word processor to create this document. The file MUST be called design3.txt

Why and How Much Does This Count

This design3.txt file will count as 10% of your project 3 grade. 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.

Your design3.txt file will be compared to the header file or files that you submit when project 3 is due. Minor changes to the design are allowed. A minor change might be the addition of another parameter to a function's parameter list, or the addition of another function or two.

If there were major changes between the design document and the header files that are part of the final project, you will lose 5 points. This would indicate that you didn't give sufficient thought to your design before beginning the implementation.

Submitting the Design File

To submit your design document, type the following at the Unix prompt. Note that the project name starts with uppercase 'P'.

submit cs201 Proj3 design3.txt

To verify that your design document was submitted, you can execute the following command at the Unix prompt. It will show all files that you submitted in a format similar to the Unix 'ls' command.

submitls cs201 Proj3