CptS 464/564 Syllabus
Distributed Systems Concepts and Programming
Fall, 2001
MW 4:15-5:30, EME B-46 (and WHETS TV to WSU Tri
Cities)
http://www.eecs.wsu.edu/~bakken/564.htm
Prof. Dave Bakken,EME 55; Office 335-2399; cell 208-301-1865 (only if critical), bakken@eecs.wsu.edu
Office Hours: 1:00-2:00 Monday and 2:00-3:00 Wednesday, when not traveling or ill, or class holiday.
TAs: A. David McKinnon (mckinnon@eecs.wsu.edu), Shuohao Zhang (szhang2@eecs.wsu.edu)
TA Office Hours (in ETRL 301): No weekly ones, will have some on a per-program basis.
The last few years have seen a significant number of advances in computer and communications technologies, as well as the sharp decline in their cost. These developments, coupled with the growing availability (almost ubiquity) of network and internet connections, have resulted in the huge growth in the size and diversity of computer programs, which are executed across multiple computers. The most prominent examples use the World Wide Web (WWW), which has been called “the last gold rush of the millennium,” but other examples abound.
This course will examine the state of the art and practice in distributed systems and will provide significant experience in programming them.
As a result of this course, students will:
· Be well-versed in the fundamental issues involved in designing, programming, and using distributed systems
· Be familiar with some of the most significant new software technologies for creating distributed programs
· Have significant experience using CORBA, the most technologically advanced software framework for creating distribute program.
Verissímo, Paulo and Rodrigues, Luís. Distributed Systems for System Architects, Kluwer Academic Publishers, 2001, ISBN 0-7923-7266-2.
Hennig, Michi and Vinoski, Steve. Advanced CORBA Programming with C++, Addison-Wesley, 1999, ISBN 0-201-37927-9. Alias: “H&V”.
Coulouris, G, Dollimore, J., and Kindberg, T. Distributed Systems: Concepts and Design, 3ed, Addison-Wesley, 2001, ISBN 0-201-61918-0. Alias: “CDK3”
Additional papers will be either handed out or linked to in the web page, or both.
Cpt. S. 360 (Systems Programming), or permission from the instructor. Also fluency and significant experience in C++. If you do not meet these prerequisites, you MUST come and talk with me the first week of class. I reserve the right to drop you from the course if it becomes obvious that you do not meet the prerequisites.
You are required to attend every lecture. If you miss one, it is your responsibility to find out what happened and to collect any material, which was handed out in class. You are also expected to participate in class discussions to a reasonable extent. This aids your learning and that of your classmates, and provides valuable feedback on the lecture. I reserve the right to lower the grade of any student who is markedly deficient in attendance and/or participation.
There will be one mid-term exam and one final examination; the final exam will only cover the material discussed and assigned after the first exam. There will be three homework assignments given out. There will be five programming projects, all involving C++ and CORBA.
The following allocation of grade percentages is tentative, and may change during the semester:
Component 464 564
Exams (2): 45% 45%
Homeworks (3) and Surprise Quizzes : 15% 15%
Projects (4): 40% 40%
564 students will be given additional material to read, as well as additional homework, programming requirements, and exam questions. Accordingly, 464 and 564 will be graded on separate curves.
Your exams, homeworks, and programming projects are subject to the academic honor code. DO NOT CHEAT IN ANY WAY: DO YOUR OWN WORK! Side effects of cheating may involve expulsion, revocation of assistantships, a pox on your family, etc., not to mention seriously angering me…
It is quite acceptable to ask others things like “Have you gotten this exception before?,” and even have them look at your stack trace and its code It is quite unacceptable, on the other hand, to have them spend hours helping develop or seriously rearrange your program’s logic. If in doubt, ask me first….
Reasonable accommodations are available for students who have a documented disability. Please notify the instructor during the first week of class of any accommodations needed for the course. Late notification may cause the requested accommodations to be unavailable. All accommodations must be approved through the Disability Resource Center (DRC) in Administration Annex room 205, 335-1566, e-mail mailto:drc@mail.wsu.edu in Pullman.
# |
Day |
Topic |
Text |
HW |
Project |
1 |
8/27 |
Introduction and Overview of DSs |
Slides |
|
|
2 |
8/29 |
DS Foundations |
1 |
|
|
|
9/3 |
NO CLASS: LABOR DAY HOLIDAY |
|
|
|
3 |
9/5 |
DS Foundations (cont.); Middleware overview |
1 |
1 out |
|
4 |
9/10 |
CORBA-I (Basics) |
Slides, H&V |
|
|
5 |
9/12 |
CORBA-II (Basics) & Project 1 |
Slides, H&V |
1 back |
1 out |
6 |
9/17 |
DS Paradigms |
2 |
|
|
7 |
9/19 |
DS Paradigms (cont.) |
2 |
|
|
8 |
9/24 |
DS Paradigms (cont.) |
2 |
|
|
9 |
9/26 |
DS Paradigms (cont.) |
2 |
|
1 back |
10 |
10/1 |
Project 2 discussion, CORBA smart proxies etc. |
handout |
|
2 out |
11 |
10/3 |
DS Paradigms (cont.)
|
2 |
2 out |
|
12 |
10/8 |
DS Paradigms (cont.) |
2 |
|
|
13 |
10/10 |
Models of DC |
3 |
|
|
14 |
10/15 |
Models of DC (cont.) |
3 |
2 back |
|
15 |
10/17 |
MIDTERM EXAM |
|
|
|
16 |
10/22 |
LECTURE CANCELLED: Instructor sick |
|
|
2 back |
17 |
10/24 |
Midterm Review & DSs and Platforms (Prof. Bakken in Tri Cities;
meet students 3pm) |
4 |
|
|
18 |
10/29 |
DSs & Planforms |
4; 11, some 12 |
|
|
19 |
10/31 |
CORBA-III (Event Service, other) & Project 3 |
Slides, H&V |
|
3 out |
20 |
11/5 |
Real Time DSs |
11 |
|
|
21 |
11/7 |
Real Time DSs |
12 |
|
|
|
11/12 |
NO CLASS:
VETERANS DAY HOLIDAY
|
|
|
|
22 |
11/14 |
CORBA-IV
(Security) & Project 4
|
Slides, H&V |
|
3 back 4 out |
|
11/19 |
NO CLASS:
THANKSGIVING HOLIDAY
|
|
|
|
|
11/21 |
NO CLASS: THANKSGIVING HOLIDAY |
|
|
|
23 |
11/26 |
Overview of DS Security |
16 |
|
|
24 |
11/28 |
The Semantic Web (Mike Dean, Guest Lecture) |
Slides |
3 out |
|
25 |
12/3 |
Distributed Quality of Service |
Paper |
|
|
26 |
12/5 |
Distributed Quality of Service |
Paper |
|
|
27 |
12/10 |
Embedded DSs |
Paper |
|
|
28 |
12/12 |
Review for Exam, Future DS directions, etc. |
|
3 back |
4 back |
|
12/18 |
FINAL EXAM (8-10AM, Room TBA) |
|
|
|
Student Survey (complete,
tear off, and return to instructor)
WSU # |
What |
Taken before |
Taking Now |
Not taken ever |
CS 460 |
Operating Systems |
6 |
13 |
|
CS 455 |
Intro Networks |
23 |
0 |
13 |
CS 555 |
Comp. Comm. Net |
3 |
12 |
21 |
CS 557 |
Advanced Networks |
0 |
1 |
30 |
CS 360 |
Systems Programming |
34 |
0 |
4 |
EE 414 |
Digital Systems Design |
8 |
0 |
30 |
CS 425 |
Network Security |
3 |
1 |
30 |
CS 427/527 |
Computer Security |
8 |
0 |
29 |
CS 451/551 |
Database Systems |
18 |
7 |
13 |
CS 461 |
Embedded Systems |
3 |
0 |
33 |
|
CptS |
Cpt Eng |
EE |
ME |
Other |
Undergraduate |
17 |
3 |
|
|
|
Graduate |
18 |
|
|
|
|
What |
0 |
1 |
2 |
3 |
4 |
5 |
C++ |
0 |
3 |
13 |
16 |
6 |
2 |
Java |
5 |
14 |
10 |
5 |
5 |
|
LISP |
20 |
12 |
6 |
2 |
|
|
Ada |
33 |
2 |
2 |
|
|
|
CORBA |
31 |
6 |
2 |
|
|
|
DCOM/COM+ |
33 |
2 |
3 |
|
|
|
.NET |
34 |
4 |
|
|
|
|
Microsoft OLE |
28 |
6 |
|
4 |
|
|
Microsoft Programming environments (Visual C++/J++, etc) |
3 |
5 |
10 |
14 |
4 |
1 |
Linux |
1 |
7 |
15 |
10 |
5 |
1 |
Windows NT or Windows 2000 |
1 |
6 |
11 |
12 |
7 |
3 |
Other (specify): |
|
|
|
|
|
|
0 == none or vague familiarity; 1 == played with
it a little; 2 == used in 1-2 courses; 3 == used in lots of courses, and am one
of the best at it among my peers; 4 == used for years and a local guru; 5 top
100 or 1000 in the US in it.