CALIFORNIA STATE UNIVERSITY Dr. Renner
Department of Computer Science Last Revised Jan.25, 2001
Policies on Programming Guide
RESPONSIBILITIES:
1.
2. You are expected to check your e-mail on that account often and use this as a resource for communicating with the professor / TA.
3. You are expected to have a copy of the programming assignment specifications or project instructions. It is your responsibility to understand all requirements as outlined in the specifications and adhere to them fully.
4. All students are responsible for maintaining copies of all files submitted. This guarantees the existence and availability of back-ups in case some or all of these files get lost, accidentally modified or deleted.
IMPLEMENTATION:
1.
UNLESS OTHERWISE SPECIFIED, all programs must be written in C++ (csci15b), Lisp or CLIPS (AI courses), or some other approved modern language (190/397/398 projects). They must be compiled and fully tested on the HP-Unix, Sun-Solaris, or other platform specified or approved by instructor prior to submission.
2. Programs must exhibit good software design. They must be written in a modular fashion, and the task of the main function should be limited to that of a driver routine.
3. All functions must be prototyped. Functions should be written to address a specific task, be flexible and reusable. Class definitions and header files should be used wherever appropriate.
4. Use of global variables will not be permitted.
PROGRAM FILES:
1. All source code must include your name, the filename, date of last modification, and be fully documented. This includes makefiles, header files, script files, data files, etc. that pertain to your program.
2. All source code must be submitted on time, according to the submission procedures outlined in the specs.
3. Late submissions will strictly not be accepted.
DOCUMENTATION:
1. Hardcopies of all source code must exactly represent their electronic counterpart. No handwritten alterations will be accepted.
2. All program files must contain a general documentation header which provides the following:
a) associated file name & program / project title
b) programmer name & course number
c) date of last modification
d) platform & compilers the program has been successfully tested on
e) description of the program and its features (in your own words)
f) list of I/O requirements and formats
g) information regarding files, example data files, etc.
h) any other specific instructions necessary to run your program
I) acknowledgments (texts; personal assistance given/received)
3. All source files must contain header documentation to accompany each function, example inclusions:
a) preconditions & postconditions for the function
b) input/output requirements for the function
c) general description of task being performed by the function
d) variable definitions local to the function
4. All source files must contain in-line comments sufficient to aid the understanding of each segment of code at a glance! Commenting style should be consistent throughout.
5. If a hardcopy submission is requested, it must include:
a) your complete source code
b) sample data & output from test runs
c) SIGNED PLEDGE SHEET (www.ecst.csuchico.edu/~renner/Teaching/Policies/PLEDGE.doc or .html or .ps
6. If a hardcopy submission is requested, all materials must be neatly presented and submitted in a folder, prior to the specified deadline.
CONDUCT:
Collaborative work of any form is strictly prohibited,unless the project instructions explicity state otherwise. Students are encouraged to seek the assistance of the professor or TA when questions arise. If any assistance is given or received by a source other than the professor or TA, this must be acknowledged in your general documentation. The work you turn in must be your own and not the work of another. The instructor(s) reserve the right to request individual conferences with students. All students must be prepared to demonstrate a thorough understanding of their implementation.
Any infraction of these guidelines will be considered cheating and will be subject to the penalties as outlined in the syllabus and the University Catalog under the Ethical Standards and Disciplinary Procedures for Academic Honesty.