Course Objectives: This course provides a comprehensive overview of distributed computing principles with emphasis on practical techniques on distributed computing. Through this course, students will get sufficient understanding and hands-on experiences on distributed systems modeling, inter-process communication, remote method invocation, processes and events ordering, and synchronization.
Pre- or co-requisite: EEC484/584, Computer Networks
Textbook: Distributed Systems: Principles and Paradigms, by Andrew S. Tanenbaum, and Maarten van Steen, Prentice Hall, 2002.
Reference Book Distributed
Systems: Concepts and Design (4th
Edition), by George Coulouris, Jean Dollimore and Tim
Kindberg, Addison-Wesley, 2005
Instructor: Dr. Wenbing Zhao
Office: SH434
Phone: (216) 523-7480
Fax: (216) 687-5405
E-mail: wenbing@ieee.org
Lecture time: M W 6:00-7:50pm
Office hours: M W 2:00-4:00pm and by appointment
Tentative
Schedule:
|
Week |
Topics |
|
|
1 (Aug 25 - 29) |
Aug 25:
Aug 27:
|
Handout |
|
2 (Sept 1 – 5) |
Sept 1: Labor Day (No Class) Sept 3:
|
|
|
3 (Sept 8 – 12) |
Sept 8:
Sept 10:
|
Handout |
|
4 (Sept 15 – 19) |
Sept 15:
Sept 17:
|
Ch. 2.2-2.3 |
|
5 (Sept 22 – 26) |
Sept 22:
Sept 24:
|
Ch. 2.4, handout |
|
6 (Sept 29 – Oct 3) |
Sept 29:
Oct 1:
|
Handout |
|
7 (Oct 6 – 10) |
Oct 6: · Review and discussion (notes)
Oct 8:
|
|
|
8 (Oct 13 - 17) |
Oct 13: Columbus Day (No Class) Oct 15:
|
Ch. 3.1-3.4 |
|
9 (Oct 20 – 24) |
Oct 20:
Oct 22:
|
Ch. 4.1 |
|
10 (Oct 27 – 31) |
Oct 27:
Oct 29:
|
Ch. 5.1-5.2 Ch. 5.3-5.5 |
|
11 (Nov 3 – 7) |
Nov 3:
Nov 5:
|
Ch. 5.6, Ch. 7.5.1 |
|
12 (Nov 10 – 14) |
Nov 10:
Nov 12:
|
|
|
13 (Nov 17 – 21) |
Nov 17:
Nov 19:
|
|
|
14 (Nov 24 – 28) |
Nov 24:
Nov 26:
|
|
|
15 (Dec 1 – 5) |
Dec 1: · Literature Review: Presentation and Discussion#4: TBD (Chiluka) Dec 3:
|
|
|
16 (Dec 8 – 12) |
Dec 10 (6-8pm):
|
|
Project
For individual or a team of two. You get to choose the project topic and you can use a programming language of your choice. The topic must be closely related to distributed computing. Required submissions for the project:
To give you an idea what you might want to work on, the following is a list of projects that have been done by students in this class last time it was offered.
ü Grid computing in JXTA
ü Online lottery using Java RMI
ü Epidemic algorithm in distributed systems
ü Online marketplace
ü Online menu ordering system
ü e-Banking
ü Instant messaging service using Java RMI
ü A streaming media service using Java RMI
ü Implementation of calendar service using Java RMI &JMS
ü Text based group editor
Midterm Examinations
There is no makeup exam. The examinations are closed book and closed notes, except that you are allowed to bring with you a one-page hand-written cheat sheet no larger than the US letter size (double-sided allowed).
Labs
There will be no makeup lab. Exception may be granted to those who have strong background to complete the labs without my supervision (in which case, you do not have to show up during the designated lab sessions. However, lab reports are still required). If you are granted an exception, the related requirement on the lab session attendance for class participation credit is automatically waived.
Class Participation
10% of the course credit is allocated to encourage student class participation. I may perform a roll call in the beginning of each class to determine the attendance. To obtain the full credit for class participation, you must satisfy the following conditions:
To help me keep track who asked me questions, please send me an email with the following information for each question you have asked within 24 hours after the lecture:
Grading
Class participation 10%
Midterms 40%
Labs 20%
Literature Review and Presentation 10%
Project 20%
The final grading is based on your accumulated effort in this course.
Your final grade is determined approximately based on the following schedule:
A: 90-100%
A-: 85-89%
B+: 75-84%
B: 65-74%
B-: 60-64%
C: 50-59%
F: <50%