next up previous
Next: Academic Violations Up: Computer Science 1321 Course Syllabus Previous: Text

Subsections

Assignments and Grades

Homeworks

Homework assignments give an opportunity both to apply material covered in lecture and to learn new material. Learning the course's material and solving the homework problems are highly correlated.

Most homework problems will be programming problems almost certainly using the C++ programming language. You are free to work on any computer using any compiler or interpreter you desire. Some compilers do not fully support templates or the Standard Template Library; do not use them.

Most homework assignments and solutions will be distributed via the class WWW site. Solutions may be removed after being posted for three weeks; save a copy of you want one. Each assignment will be due at the beginning of the period on the day assigned. Most homework assignments will be submitted electronically, and many homework submissions will be graded by testing your programs' behavior on various inputs. Also, your programs' code may be randomly sampled for correctness and style.

Class Project

Together, students in CS1321-1 and CS1321-2 will design, build, test, and document, a computer program determining the sales tax for any given group of items sold at a particular location. As far as I am aware, no such program exists, but there is a significant business need for one. If we are successful, we will publish our results.

You are required to participate in at least one aspect of the project. Most tasks will last two weeks. Many tasks will require working with a group of students. An outline of the project and possible tasks will be presented in the second lecture. Sign-ups for tasks will occur soon thereafter on a first-come, first-served basis.

Quizzes

The purpose of quizzes is to ensure students are not deferring learning the material. As a student in this course, you are academically mature enough that quizzes are not necessary.

Examinations

Exams are comprehensive but will emphasize the most recent material. Two in-class exams will occur 15 February and 21 March. For 1321-01, the final exam will be given 08 May, 8:30-11:30am. For 1321-02, the exam will be 11 May, 2:00-5:00pm. Please notify me on or before 25 Jan if you have an exam scheduled at the same time.

Late Work

There are too many students taking the course to accept late work. Late work will not be accepted without a note from a medical doctor or prior notice of an excused absence for a university-sponsored activity.

Grades

The grades in this course will be determined by the results of

weighting assignment
45% exams,
45% homework assignments, and
10% class project participation.

Also, the two lowest homework grades will be replaced by grades corresponding to your class project participation grade even if your two lowest homework grades are higher. The two reasons for this are: 1) I expect most class project tasks to require about two weeks of work, and 2) this will permit not submitting homework assignments for two weeks if necessary.

Letter grades will be assigned according to the following scale:

90-100 A
80-89 B
70-79 C
60-69 D

with plus and minus grades assigned in marginal cases. Keeping track of your scores will indicate where you stand in the class at any time.

Collaboration

Many people learn more effectively when they study in small groups and cooperate in various other ways on homework. This can be particularly true in programming assignments, where working with a partner often helps to avoid careless errors. I am very much in favor of this kind of cooperation, so long as all participants actively involve themselves in all aspects of the work--not just split up the assignment and each do only a fraction. When you hand in a paper with your name on it, I assume that you are certifying that this is your work and that you were involved in all aspects of it. Similarly, on your homework paper, you should write the names of the other students with whom you worked.

Here is an example scenario of how a good collaboration might work:

Both (all) of you sit down with pencil and paper and together plan how you're going to solve things. You go together to a cluster and sit at adjacent machines. When one of you has a problem, the others look over your shoulder. You check after each problem to make sure that the others are all caught up. In your submission, each of you lists the names of all of your collaborators.

If you're worried you are becoming too dependent on your partners, do the planning together, but go sit at a machine that's not nearby. See what you can do. In general, I strongly encourage you to work as a group. It's a very effective way of catching conceptual and other errors and of refining one's thinking and understanding.

Unless otherwise specified, each student must submit her/his own homework solution. Collaboration such as that listed above, e.g., planning the programming project together is permitted, but each student must submit her/his own programs. The names of all students with whom you worked must be listed.

(The preceding is based on the MIT 6.001 collaboration policy.)


next up previous
Next: Academic Violations Up: Computer Science 1321 Course Syllabus Previous: Text

2000-01-13