This course provides an introduction to distributed systems, primarily through a focus on the design and development of software that transmits information across networks. Topics will include some but, perhaps, not all of the following: the architecture of distributed systems; networking; synchronous and asynchronous protocols network programming; remote procedure calls; threading and shared memory concurrency; cryptography and security.
Java Network Programming (4th edition), E. R. Harold. O'Reilly & Associates, 2013, Print ISBN: 978-1449357672.
CSC 301, 383, or CSC 393; and CSC 374
12:15pm - 1:15pm on Mondays and Wednesdays, and 3:15pm - 4:15 on Mondays in the 1st Floor Collaboration Lab, CDM
Overview
This is a programming-intensive course. There will be three (3) individual programming assignments and a group programming project in lieu of a final exam. These programming assignments will require you to write code in Java and possibly another language. In addition, there will be a midterm exam in the latter half of the course. The due dates for all assignments will be listed in the lecture notes and the assignments themselves, as well as added to this syllabus. Further details will be posted on the class website, which is on Desire2Learn (D2L).
Sec. 1. Individual Programming Assignments
The three programming assignments involve network programming at a low level. You must complete each program individually. In order to pass each programming assignment, you must earn at least six (6) points out of a possible ten (10). Programs that fail to execute do not pass.
Late programming assignments will be accepted until the time that a solution to the assignment is discussed in class. After you submit your code, it will be reviewed and feedback will be provided on D2L. You may revise your code and resubmit it as often as you like up until the due date. Programs submitted after the due date will be graded, but you will not be given the opportunity to correct your mistakes. If you wish to correct your code before a final grade is given, you must do so by the due date. Your grade will be the highest score that you receive for all of the versions that are graded.
Each source file must begin with a comment block containing the following information:
// Student Name: // Assignment #: // Source file name:
Sec. 2. Group Programming Assignment
Sec. 3. Midterm Exam
The exam is worth one-hundred (100) points.
Earning Extra Points
You may earn extra credit points by lecturing to the class on a topic that you research this quarter. Although there are many interesting topics in distributed systems, you must confine your topic to one that is relevant to the curriculum for this particular course. As the instructor, I must decide whether your selected topic is sufficiently relevant. If you are interested in this extra credit, please contact me.
How Your Grade for the Course Is Calculated
Your grade is calculated by subtracting the following amounts from 100:
Alternative grade procedure for midterm exam: If you have a documented disability, such as a history of extreme test taking anxiety, please see me for accommodation.
Each student is expected to turn in original code for the programming assignments. Copying code from another person is considered a serious violation of the university's academic integrity policy (see below).
TBD
Although attendance is encouraged in order to foster participation, it is not mandatory.
This course will be subject to the university's academic integrity policy. More information can be found at http://academicintegrity.depaul.edu/. If you have any questions be sure to consult with your professor.
All students are required to manage their class schedules each term in accordance with the deadlines for enrolling and withdrawing as indicated in the University Academic Calendar. Information on enrollment, withdrawal, grading and incompletes can be found at: http://cdm.depaul.edu/enrollment.
Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential. To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class), and make sure that you have contacted the Center for Students with Disabilities (CSD) at: csd@depaul.edu.
Lewis Center 1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296
Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely separate from the student’s identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation. Students complete the evaluation online in CampusConnect.
This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be thoroughly addressed during class, posted under Announcements in D2L and sent via email.
Policies of the school are explained on the webpage for this course on my.cdm.depaul.edu.