STYLE SHEET
CS 202: Programming Systems
Description of Design and Tools used:
• With each program you must provide a written discussion
of how you used a debugger, and the major design consideration encountered when
solving the specified problem (600 word minimum). Both must be emailed.
•
This must be written in English using complete sentences. Each major design
issue should be described; pseudo code and drawings may be used to describe
your design. 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 perform for the assigned application?
2) Would a different
data structure work better? 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?
• Consider how well your program meets the goals of being Object
Oriented:
1) Were there classes
that had clear responsibilities?
2) Did one class do
the job that another should have? (e.g., is a list class string comparing the
underlying data still?)
3) Where did
hierarchical relationships fit in and would it be effective in a larger
application?
4) What was not Object
Oriented?
5) Can you envision a design
that would have been more Object Oriented (if you had more time)?
• Please note that this should not look like C or C++ code; words such as "cin", "cout", "++", "--" should not be part of your description. Any documents submitted which look identical to C or C++ code will not be accepted.
• The description of the tools used should discuss what the tools were, their purpose, how you used them, what features and benefits they provide, and what draw backs they have.
SOURCE CODE
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 definition telling what it is 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.
6. A consistent pattern of indentation. See the attached C++ style requirement for examples.
7. White space (blank lines) to separate functions.
8. For each function, explicitly list the input data and the output that will result from that function. 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 arguments.
This means that there must be a header for each function definition. Even for each member function!
INSTRUCTIONS
TO Submit PROGRAMS: IMPORTANT NOTES:
1. Submit
your program to the D2L Dropbox for the appropriate assignment.
2. If you
submit your program to the wrong dropbox, it will not be graded correctly
3. It is
best to wait to submit your program to the D2L dropbox until you are satisfied.
Only one version of your program will be graded.
4. If you
submit a program to the D2L dropbox after the late due date, the grader is
under no obligation to grade the assignment unless you have instructor
approval.
5. With D2L,
you must first upload the file(s) and then select the “Submit” button. Forgetting to do so will cause the uploaded files
to be lost
6.
As
a precaution, ALSO email your
programs to: karlafgr@cs.pdx.edu The grader will be
using the D2L dropbox, but if there is a problem with D2L, emailing your
programs to karlafgr will ensure that you get full credit, as appropriate.
Always keep
a backup of your programs!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10. REMINDERS: Every program must have a comment at the beginning with your first and last name, the class (CS202), and the assignment number. This is essential!