CPSC 331 Operating Systems Spring 2005

CPSC 331 Course Policies

You are expected to be familiar with the course policies stated below. Ignorance of a policy is not an excuse for violating a policy or being surprised when it is applied to you, and will not exempt you from its penalties.


Email/Web Policy

You are expected to regularly check your HWS email and the course web page (http://math.hws.edu/~bridgeman/courses/331/f05/) for announcements or other important information. If you have Blackboard set to send your mail to an account other than your HWS account, you are expected to check that account as well. Announcements, assignments, handouts, and other information relevant to the class as a whole will be posted on the course web page. Email will be used in the case of a particularly time-sensitive announcement (e.g. an announcement about a homework which is due in the next class meeting) or for matters which are only relevant to a few people in the class.


Attendance and Participation

You are expected to attend and participate in class. Showing up late will count as an absence. "Participation" means that you are engaged in class - you are not expected to volunteer for everything, but you should contribute to the class in a meaningful way multiple times throughout the semester.

Unexcused vs. excused absences: "Unexcused" does not mean "didn't provide an excuse", but rather "didn't provide a sufficiently good reason". Things like being too busy or oversleeping are not good reasons. Absences due to things such as sports competitions, official Colleges activities such as musical performances or debate competitions, academically-related events such as attending a conference, serious illness, or personal or family emergencies are considered excused absences.


Late Policy

Homework problems are due at the start of class on the due date (typically the next class meeting after they were assigned). No late homeworks will be accepted for grading, though you may submit solutions late if you want feedback on your answers. To accomodate inevitable circumstances, the two lowest individual problem scores will be dropped from the computation of the homework component of your final grade.

Programming projects are typically due at the start of class on the due date. Late projects will be penalized 5% if turned in by midnight on the due date and 10% per day thereafter, including weekend days and holidays. In cases where there are multiple parts to a project, completed parts may be turned in on time and late penalties will be assessed on only the parts that are late. Percentages apply to the total points possible on the assignment or part of assignment, not the number of points you earned (i.e. a project worth 100 points will have 20 points deducted for being two days late).

To allow some flexibility, a system of "slip points" will be used for programming projects. Each student will receive 40 slip points at the beginning of the semester, which can be applied against points deducted due to late penalties. Slip points will be applied automatically, and the number used on a given assignment will be noted when the assignment is handed back. For group projects, each member of the group will have the appropriate number of slip points applied. It is up to you to keep track of how many slip points you have left and to plan deadlines appropriately. Note there is very little leeway in the schedule, so be careful that being late on one project doesn't make you even later on the next (and so on). Slip points cannot be used to extend deadlines beyond the end-of-semester SuperDeadline (below) and cannot be used on homeworks. Unused slip points are lost at the end of the semester (they do not turn into extra credit).

End-of-semester SuperDeadline: No work will be accepted after the end of the timeslot in which the final exam is scheduled.

Note that computer labs may not be available at all hours or over college holidays, so be sure to take this into account if you are relying on those facilities. Furthermore, labs tend to get very busy right before deadlines, especially at the end of the semester. "I couldn't get my work done because I couldn't find a computer!" is not a valid excuse.


Make-Up Policy/Extensions

Students are expected, whenever possible, to arrange for making up work in advance of an absence.

Rescheduling or making up of exams will only be allowed for compelling circumstances. Arrangements must be made in advance for non-emergencies. Making up a missed exam will only be allowed with documentation from an appropriate person (dean, doctor, etc). In particular, note that the final exam will not be given early without a compelling reason (and having travel arrangements which require you to leave early is not generally a compelling reason).

Extensions (beyond the slip points) will generally only be granted for compelling reasons e.g. serious illness or personal or family emergency. In particular, being busy or having a bunch of assignments due at the same time are not reasons for which extensions are granted.


Collaboration Policy

The Principle of Academic Integrity (see the HWS Catalog, p. 29) governs the work completed in this course. The following outlines specifically how this principle applies.

It is never acceptable to be in possession of another student's program, either hardcopy or electronic, before the assignment due date and before both parties have handed in their versions to be graded (whichever comes later). This includes work from previous semesters. You should avoid leaving your work whether another student can find it (i.e. don't forget to pick up printouts) and should never loan a printout to another student or allow another student to use your network account. It is, however, fine to share and discuss actual solutions and programs with other students once the due date has passed and everyone involved in the sharing/discussion has turned in their assignments (or no longer plans to).

Exams are to be completed solely by the student whose name is on the paper. Unless otherwise specified, these are closed book/notes, which means that you may use only materials provided as part of the exam.

Homeworks are intended to be learning experiences. Because it can be very productive to work with one's peers to solve a problem, you may work with other students on homeworks. You may also consult the book, your notes, any course materials provided in class or on the course website, and reference books found in the lab. Other materials (e.g. websites) may be used as C or C++ language references, but not to locate whole or partial answers to assigned problems. All collaboration on homeworks is subject to the following rules:

  • Any help received from another student, tutor, or a source other than provided course materials (that is, other than your book, your notes, the course website, and reference books in the lab) must be acknowledged in writing in your handin - name who helped you or give a reference for the source, and explain how they helped.
  • You must fully understand any help you receive and be able to explain the solution to someone else.
  • Solutions must be written up independently in your own words. Copying part or all of someone else's solution (including electronic files) is expressly prohibited, even if you contributed to that solution. This means that it is acceptable to work in a group to discuss an approach for solving a problem (e.g. to work out some pseudocode for a program) or to work out some C++ language syntax, but that you may not write actual code for the solution in a group (so turn that pseudocode into code or integrate the syntax into your program on your own, away from the group).

These rules are for your own good - it is easy to think you understand the solution when the group works it out, only to realize there was a detail you didn't get when you have to produce the solution yourself on an exam.

Projects should be the work of the group receiving credit for the assignment. You may consult the book, your notes, any course materials provided in class or on the course website, and reference books found in the lab. Other materials (e.g. websites) may be used as C++ language references, but not to locate whole or partial solutions for the projects. All collaboration on projects is subject to the following rules:

  • You may receive (only) debugging and technical help from other students and tutors. Anything beyond help finding bugs, clarifying language syntax, or understanding how Nachos works should be referred to the instructor. All help received must be fully understood and documented, as for homeworks.
  • You may not discuss design or solution approaches with other students not in your group.

Facilitating academic dishonesty by providing unauthorized help or allowing someone to copy your work is also considered a violation of the policy even if you didn't gain anything from the collaboration. This means that giving someone a copy of your solution incurs the same penalty as the person who used your solution.

If you have any questions about what is allowed collaboration, ask before you get into a questionable situation.

There are no exceptions to this policy. Violations will result in a minimum penalty of a 0 on the assignment and may be referred to the Committee on Standards. Ignorance of the policy and desperation ("It was the night before it was due and there wasn't anyone else to ask!") are specifically not excuses for violating the policy. Having to deal with academic dishonesty is time-consuming and annoying, so don't go there!


Plagiarism in Programs

Because some collaboration is allowed on programs and because it is common to adapt code from examples to solve your own problems, it can be easy to unintentionally or intentionally plagiarize someone else's program. Note that this section is concerned with plagiarism as it violates the collaboration policy (i.e. plagiarism from another student or an outside source) - you are welcome to borrow code/adapt examples from class or the book.

If you aren't sure about what counts as plagiarism in a program, think about writing a paper. Is it acceptable to take sentences or paragraphs from someone else's paper and include them in your own? No, unless they are properly quoted and the source credited. Is it acceptable to take sentences or paragraphs from someone else's paper, reword them a bit, and include them in your own? Also no. In programs, this means that it isn't acceptable to copy chunks of someone else's program verbatim (there's no such thing as quoting in a program), and it isn't acceptable to borrow the essence of someone else's program by looking at it and then making some changes to disguise the source - in both cases, this involves seeing someone else's code and is a direct violation of the collaboration policy.

Don't think that you can get away with copying someone else's program because you think two programs which do the same thing have to look alike. It is true that programming languages are simpler and more structured than human languages like English, and so two independently-written programs solving the same problem will be more similar than two independently-written papers on the same topic. However, "more similar" doesn't mean "the same" - there is still flexibility in many aspects of the program, and each programmer will express themselves somewhat differently. It is clear when two programs were derived from the same source, and I routinely run a plagiarism-detection tool on all handins.


Center for Teaching and Learning (CTL)

Hobart and William Smith Colleges encourage you to seek the academic collaboration available to you to demonstrate your best work. Students who would like to enhance their study skills, writing skills, or have any academic inquiries can contact the CTL. If you are a student with an identified disability and you would like to receive accommodations, please provide me with the necessary documentation from the CTL at the start of the semester (students with disabilities have to register at the Center), so that I can best accommodate your needs. CTL staff encourages each of you to stop by Harris Hall to learn what is available to you at this academic resource. Please contact the CTL at 781-3351 to make an appointment or stop by Harris Hall (on South Main, next to Merritt Hall) to meet with Center Staff.


Extra Time on Exams or Other Accomodations

See the section on CTL above. You must provide me with documentation in advance in order to receive accomodations.


Tutoring/Extra Help

If you have questions or feel that you need extra help with the course material, your first stop should be office hours - just show up during regular office hours, or schedule an appointment if you cannot make those times. You may also request a CTL tutor, but note the following from the CTL Tutoring Guide:

"The CTL tutoring program is designed to supplement academic support services offered by the instructor and teaching assistants of the department in which the course is offered. An integrated approach, with the instructor, teaching assistants, and CTL working together, has been shown to be the most effective way to insure that tutoring is successful. Therefore, a CTL tutor will be assigned only after a student has met regularly with his or her instructor, attended review sessions, and taken advantage of departmental tutoring offered in conjunction with the course. If, at this point, the instructor and student determine that additional help is warranted, the student should contact Sam Vann at The Center for Teaching and Learning to pick up a CTL tutoring form."


Valid HTML 4.01!