COMPSCI 677: Distributed and Operating Systems Syllabus

Spring 2022 Syllabus and Course Information

1. Course Description

2. Course Sections

3. Course Staff and Office Hours

  1. Instructor: Prashant Shenoy
    Office: Room A333, LGRC
    Instructor Office Hours: Wednesday, 3:45 - 4:45 pm, Room A333, or by appointment. Initially, office hours will be held over zoom.
    Phone: (413) 577 0850
    Email: shenoy [at]

  2. Teaching Assistants:
    Bin Wang, binwang [at],
    Chris Nota, cnota [at],
    Jorge Murillo, jrmurillo [at],
    Hao Shi, haoshi [at]

    TA Office hours:
    Monday -  - 3:45 to 4:45pm (after class) - Prashant
    Tuesday -  3 PM to 4pm - Jorge Murillo
      Wednesday - 10:00 to 11:00 am - Bin Wang
    Thursday -  1pm to 2pm  - Hao Shi
    Friday 11:00 AM - 12 PM - Chris Nota
  3. Grading Assistants:
    Noel Varghese, noelvarghese [at]
    Akshay Raju, adharamkarvi [at]

4. Course Materials

  1. TextbookThere is no textbook for this class. Courses notes and handouts will be provided as reading material. Two older books on Distributed Systems will be used as reference books. Neither is a required textbook and both are available as online PDFs from the authors for no charge. The following references are handy to have:

  2. Assigned readings from papers, magazines, manuals, and the web. This material will be made available online on the course web page and also on Moodle.
  3. Course home page: All course materials (handouts, lecture notes, lecture audio / video homeworks, assignments and solutions) will be posted on the course home page at
    As the semester goes along, the site will fill up with lots of useful other information, pointers to other sites, etc. Please make sure you check out and use this site frequently.
  4. Moodle: We will use moodle for online quizzes and some submissionms. Solutions and grades to individual assignments and labs will also be posted on moodle.
  5. Live and recorded lectures We will broadcast live lectures via Youtube Live and recorded lectures will be available after the end of each lecture. All lectures (live and recorded) will be available via the class youtube Channel Note that live broadcast of lectures is not guaranteed in case of technical difficulties.
  6. Piazza: We will use a Piazza discussion board for online discussions on course topics and lab assignments. You need to enroll for the class discussion board at the following URL:
  7. Github Classroom We will use github classroom for all programming assignments. You will be required to link your github account ID to your gihub classroom account. If you do not have a github ID, you can create one for no charge and then link it to your github classroom 677 account.

5. Grading Policy

The grade for the class will be based on programming assignments ("labs"), homeworks (both written and hands-on homework), two exams (midterm and a final) and class particiartion.

6. Course Policies

  1. Class participation I strongly encourage participation in the class through Q&A and discussion. This can be done in two ways: by asking/answering questions or participating in discussions in the lectures (for section 1 students) and by asking/ answering questions or participating in discussions in the Piazza online forums (for section 1 and 2 students). A small portion of the grade is allocated for class participation.

    While lectures will be recorded and made available to all students, section 1 students are strongly encouraged to come to the lectures on a regular basis and participate in class discussions, which improves the experience for all.

  2. Laptops, tablets, phones and electronic device policy Cell phones should be switched off or put on slient alert during class lectures. Texting or using phones for other purposes (e.g, email, social media, web browsing) during class is strictly prohibited.

    Laptops and tablets are NOT permitted during lectures. The use of such devices in class tends to be a distraction and hampers learning. Please respect this policy by not using laptops or tablets during the lecture.

    Any student with an electronic device that disrupts the class or violates this policy will lose two (2) points from their final grade.

  3. Academic Honesty Policy This all may sound pedantic or even harsh, but I have no sympathy for those that gain unfair advantages over their classmates and misrepresent themselves. All individual work in this course must be your own, and all group work must be done by members of of your group. Violation will result in a zero on the project in question, probable failure in the course, and initiation of the formal procedures of the University.

    Discussion of course material is not considered cheating and is strongly encouraged. You are allowed to consult with other students in the current class to help you understand the project specification. However, you, or your group, may not collaborate in any way when constructing your solution -- the solution to the project must be generated by you or your group alone. You are not allowed to work out the programming details of the problems with anyone or to collaborate to the extent that your programs are identifiably similar. You may not purchase solutions off the internet, or hire people to code your project. If you have any questions as to what constitutes unacceptable collaboration, please talk to the instructor right away. For homeworks and take-home exams, all work must be done individually and no collaboration is is allowed.

    Acts of cheating and plagiarism will be reported to the University Academic Honesty Board. You are responsible for knowing, and will be held to, the University Academic Honesty Policy. This policy is available online here
  4. Exceptions and makeup policy We understand that despite your best attempts to meet course deadlines, situations may arise where you are unable to complete the assigned work on time. This may be especially the case during a pandemic semester. We aim to be flexible in such situations. All students have three late days with no penalty that can be used across homeworks and labs. For group work, the three late days applies for the entire group. Requests for exceptions should be made through a piazza private post using the exceptionrequests folder.
Copyright notice: Many of the materials created for this course are the intellectual property of the instructor. This includes, but is not limited to, the syllabus, lectures, lecture videos, podcasts, and course notes. Except to the extent not protected by copyright law, any use, distribution or sale of such materials requires the permission of the instructor. Please be aware that it is a violation of university policy to reproduce, for distribution or sale, class lectures or class notes, unless copyright has been explicitly waived by the faculty member.
This page is online at
Prashant Shenoy
Last modified: Sun Jan 22 05:33:27 EST 2019