Collaboration Policy

by Mike Gleicher on August 29, 2011

Computer game design and development (and Computer Graphics) is (usually) a team sport. In fact, learning computer game development (and, arguably, learning in general) is best done in collaboration with others. Unfortunately, in a university class setting, we have the unfortunate constraint that we must grade individuals independently, so we need to have people work independently on graded assignments so that we can assess them. Therefore, there is a fine line between "collaboration" and "academic misconduct".

For CS679, we want to encourage collaboration. However, we also need to make sure that each individual gets appropriate credit for there work.

To make things more complicated, much of the work in CS679 is done in groups (of 2, 3 or 4). Group work in class can be problematic because of the diversity of skills, interest, ability, time commitments, schedules, … And the fact that we need to assess both individually and as a group.

Students are encouraged to discuss class topics and assignments with other students, subject to the following rules.

  1. If you are unsure if something is collaboration or academic misconduct, please ask the instructor or TA for clarification.
  2. We will be explicit whether an assignment, project component, or exam is an individual effort or not. If it is not clear, ask.
  3. We will assign people to groups. We might ask for requests, but in generally, we will make group assignments (this post explains why).
  4. Ultimately, each student is responsible for the material. Projects, assignments, and exams will require you to understand the assignments, so be careful not to rely on help since at some point you might need to do it your self.
  5. Collaboration must be a two way street. The person giving help must OK it. (e.g. don’t look at someone else’s work without their permission).
  6. It is not OK to broadcast help. Its OK to answer someone who asks for a hint, but its not OK to post a hint to a mailing list or web page. If you have something that you would like to offer to the class, please send it to the instructor.
  7. For individual efforts, every student must turn in their own assignment, and is responsible for it.
  8. For group projects, specific instructions will be given (generally it is turned in once, and other group members give pointers).
  9. When a group project is turned in, all members of the group are responsible for it. The group should turn in a single hand in (unless specifically instructed). Note: most group efforts will also have individual components (which must be done, and handed in, by each individual).
  10. Projects must be "substantially" written by the student or group handing it in. In particular, the "meat" of the efforts must be completed by the student/group handing in the project.
  11. Any code that you didn’t write must be given proper attribution. If you grab a piece of code from the web (including the class sample code!), another student, some book, … – YOU MUST SAY SO! It is OK to use pieces of sample code – providing that you give proper credit to the author.
  12. We will give you example code to work with for various assignments and projects. Be sure to give it proper attribution.

Some implications on group work:

  1. The work of the group will be evaluated as a single thing, and the group will be given a single evaluation for the “group parts.” Usually, there will be an individual component to any group work (that will be evaluated independently).
  2. The projects are designed to be done in the appropriate sized groups. Part of the goal is to force you to learn to work together. The group turns in a single project. If you do multiple, individual projects, you need to pick the best one and turn it in. This is rarely the best strategy (in terms of learning or actual project quality).

So…

  • It is OK to ask a classmate for help on one of the questions on a written assignment. It is not OK to "borrow" their assignment and copy it without their permission. It is not OK to just copy it without understanding it (since you won’t learn the material).
  • It is OK to ask a classmate for help looking over your code to find a bug. It is not OK to use a piece of their code without giving them proper attribution, or if its an important part of a project.
  • It is OK to use the provided example code, or a data structure implementation you find on the web PROVIDED THAT YOU GIVE PROPER ATTRIBUTION. It is not OK to use a piece of code on the web for a central piece of an assignment (like a required image processing routine)

Comments on this entry are closed.

{ 1 trackback }

Previous post:

Next post: