CS557 (Fall 2017) Syllabus


Home Page | Syllabus | Class Schedule


The current content is tentative and will almost surely be changed/updated

Table of Contents

1 Prerequisites

  1. CS 457: Networking and the Internet or an equivalent course at another university. (Strictly enforced)
  2. Programming experience with C/C++. Note that if you have not programmed in one of these languages before, you should not take this course! Spend this semester learning one of these languages instead. It is unlikely that you will pick up these languages well enough during the course to be able to complete your programming assignments successfully.

2 Course description

This course covers a wide range of advanced topics in computer networks. Unlike the undergraduate version of this class, this is a research-focused class, meaning that we will look at research problems and emerging research areas in the Internet.

For an introduction to the Internet and its protocols you should take CS457.

3 Attendance

Attendance is required except for students which are not physically based on or near campus (e.g. distance students). Each student may miss up to two classes; students that miss more than this number of classes will receive a failing grade. Exceptions to this policy may be provided at the sole discretion of the instructor. Students that - expectedly or unexpectedly - exceed the number of allowed misses are encouraged to contact the instructor as early as possible (ideally before missing the class).

4 Course materials

No Required Textbook: There is no text for this course. We will cover a number of important papers in the field. The papers will be available on the class web site. Each lecture will covers the paper(s) listed in the syllabus. You are required to read the paper(s) prior to the lecture.

5 Class structure and grading

The class will include the following graded activities:

  1. Graded paper reviews (one per lecture) 20%
  2. Midterm #1 20%
  3. Midterm #2 20%
  4. Mini-project 15%
  5. Final project 25%

The instructor reserves the right to assign up to 5 additional percentage points to students that perform particularly well in the class and/or demonstrate engagement and enthusiasm. If all activities are completed, the final grade will depend on the sum of all scores (adjusted based on the overall class performance). If one or more activities are not performed, the student will receive a failing grade, regardless of the scores received in the activity she/he completed. The only exception is as follows: the student may miss up to three graded paper reviews. Other exceptions may be accepted at the discretion of the instructor and will require written justification from the student.

All activities will have set deadlines. Missing the deadline for one activity is equivalent to not completing it, with the consequences described above. Accepting late completion of an activity is at the discretion of the instructor. Students that complete an activity late are encouraged to contact the instructor to discuss the issue. Submitting work which is so flawed that can be considered devoid of content (e.g., a one-sentence paper review, a 10-line program that does not compile) will be considered equivalent to not fulfilling an assignment, with the consequences discussed above.

5.1 Review grading

Each review will be graded on a scale from 0 to 5. For each student, the final review grade over 100 points will be computed using the following formula:

(max(R+0.65,5)/5) * 100

Where R is a student's average review score computed after disregarding the three lowest scores.

6 Reviews

Students will be expected to produce mini-review for the papers that we are going to discuss in class, and deliver them by the end of the day before class. It is acceptable to deliver reviews in advance, e.g. at the beginning of the week in which papers are going to be discussed. In order to submit their work, students must post their review in the discussion topic referring to the assigned paper in Canvas (such topics can be found in both the "Assignments" and "Discussions" tabs on the course's Canvas page; in order to submit a review, click on the Reply button). No mini-review will be due on the first day of classes.

7 Exams

There will be two midterm exams, both in-class; there is no final exam.

The first midterm exam will cover material for the first half of the class in details; the second midterm exam will cover both the second half of the class in details, and important concepts from the first half of the class.

Distance students: it is your responsibility to find a testing center with a proctor to take both midterms. If you are local, you are welcome to take the exam in class, with the other students.

8 Projects

There will be two projects. The first one will be a mini-project involving a standardized programming assignment. The second project will require students to work in pairs and involve a research-oriented assignment, different for every pair. Assignments will be discussed with students and may involve proof-of-concept implementation and evaluation of tools/algorithms, repeatability studies, in-depth review of a research area, etc. Students will need to do a class presentations based on a slide deck, and write a detailed final report (akin to a mini-paper). Remote students with no access to campus will be expected to record a presentation consisting of a slide show with commentary, and send it to the instructor. More information on the final projects will be provided later in the semester.

9 Plagiarism, academic misconducts and other issues

While students are encouraged to engage in critical discussion and review of the class topics and papers, every activity except the final project must be completed individually and consist of the student's original contribution; for the final project, students may be allowed to work in pair. Plagiarism (e.g. reusing substantial amount of material found online) in one of the activities will cause the student to receive a failing grade in the class and may bring more serious consequences at the university level.

In general, policies on cheating, plagiarism, incomplete grades, attendance, discrimination, sexual harassment, and student grievances are described in the Student Information Guide (http://www.cs.colostate.edu/advising/student-info.html). All other matters follow the policies set in the current Colorado State University General Catalog. Students are responsible for following the rules and guidelines provided in these documents.

This syllabus may change at the discretion of the instructor.


Author: Lorenzo De Carli

Created: 2017-11-10 Fri 10:57