STYLE SHEET
CS 163: Data Structures
Design
Write-up
With each program, submit a file (e.g.,
design1.doc) that describes the major design considerations encountered, and
all data structures and algorithms used. It must be a plain text document.
This must be written in English using complete sentences.
Each major design issue should be described. In the design considerations,
discuss what the main design considerations are, why they are the main design
considerations, how you solved them, and why you solved the way you did. Think in terms of analyzing your solution!
Answer the following
questions in your design writeup:
1) How well did the
data structure selected perform for the assigned application?
2) Would a different
data structure work better? If so, which one and why...
3) What was efficient
about your design and use of the data structure?
4) What was not
efficient?
5) What would you do
differently if you had more time to solve the problem?
Please note that your design should not look like C++
code; words such as "cin", "cout", "++",
"--" should not be part of your design document. Instead, describe
the major tasks that your program accomplishes. Any design document submitted
which looks identical to C++ code will not be accepted.
Your design write-up should be at least one page in
length or at least 600 words.
Requirements for internal documentation in the form of
comments are listed below.
1. A
heading explaining what the program does and listing the name of the program
author, date, class number and program number. A
heading must be supplied indicating the purpose of the entire program; in
addition, each separate function should have a heading describing it purpose
and arguments.
2. Each file should also have a heading,
explaining the purpose of that module and the listing the filename (this
is important!).
3. A comment following each variable declaration
telling what it will be used for.
4. Comments to explain any program action whose
purpose is not obvious to anyone who reads the code.
5. Use mnemonic names for
identifiers that relate to their purpose.
The following are
source code format requirements.
1. A
consistent pattern of indentation. See
the attached C++ style requirement for examples.
2. White
space (blank lines) to separate program sections. At least three lines of white space must
separate functions.
3. In your
program heading, explicitly list the input data to your program, following the
header "INPUT:". This should include the source and format for the
data being input to the program.
4. Also in your program heading, explicitly list
the output that will result from running your program, following the header
"OUTPUT:". This should include the nature and format for the program
results.
5. For functions, make sure to include a header
comment for each function; this should explain the purpose of the function as
well as describe the INPUT and OUTPUT parameters.
PROGRAM RESULTS
Output must be formatted so that it is self-explanatory and not irritating to
read.
NEVER use Global Variables
ALL INTERACTIVE INPUT MUST be echoed.
NOTES:
1. All programs in CS163
will be submitted via email. Email only one version of your assignment;
if you submit more than one, the correct version of the assignment may not be graded!!
Therefore, dont submit your program until you are satisfied. Email your
programs as attached files to karlafgr@cs.pdx.edu
2.
Within 24 hours of submitting your program, you should get
an email response indicating that the program was received. In addition, within
one week a notice will be posted in the grade-book of Blackboard indicating
that we have received your program. Expect the Blackboard grade-book to be
updated on a weekly basis (not daily!) If there was a problem with the
submission of your program both an email will be sent to you AND a comment
will be placed in the Blackboard grade-book indicating that you will need to
re-email your program.
3.
Always keep a backup of your
programs!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
4. REMINDERS: Every program must have a
comment at the beginning with your first and last name, the class (CS163), and
the assignment number. This is essential!