Purpose
This course covers new architectures and programming techniques for large scale distributed systems. Students will study state-of-the-art solutions for large scale distributed systems such as those developed by Google, Amazon, Microsoft, Yahoo, etc. Students will also explore novel ideas that may be important in the future.
Prerequisites
Operating Systems (CS 3305) is required. Ideally you also have a course in computer networks.
Instructor
Dr. Hanan Lutfiyya
Office: Middlesex College 418
Office Hours: By appointment.
Phone: 661-2111 Ext. 86888
E-mail: hanan (at) csd.uwo.ca
Textbook
This course will not have textbook. A reading list consisting of papers will be provided.
Course Website
The CS842 website is at http://www.csd.uwo.ca/hanan/cs842. Papers, presentations, project and assignment descriptions, and class information will be posted on this website. You are responsible for reading this information frequently.
E-mail Contact
We will occasionally need to send email messages to the whole class or to students individually. Email will be sent to your csd email address. You must make sure that you read your email on csd on a frequent and regular basis.
Student Evaluation (Tentative; Depends on Class Size)
Class Participation: 10%Reviews: 25%
Presentation of a Paper: 20%
Project: 45%
Class Participation
Good systems research is often the result of debate and discussion of existing systems. This course highly encourages discussion through questions and debate.
Reviews
You will be providing a paper critique for a selected set of papers. The critique is not just a summary of the paper's content. It is intended to be a brief analysis of the key ideas in the paper and your critical opinion of them. You are encouraged to point out flaws, limitations, or interesting applications of the ideas that go beyond what was said in the paper. Reviews are due at the start of each class.
Presentations
Each student to present a paper. Let us imagine that we are evaluating papers for a conference. Each student will be assigned a paper to review and present. The papers will be discussed as if they are being evaluated by a program committee. Each paper will be discussed for about forty minutes by three students: a presenter, an advocate, and a devils advocate. The rest of the class acts as the program committee. The presenter gives a fifteen-minute presentation briefly describing the paper. The presenter should be as neutral as possible in their presentation. After the presentation, the advocate has five minutes to convince the class that the paper should be accepted. After this, the devil's advocate is given five minutes to convince the class that the paper should be rejected. A five-minute question-and-answer period follows these presentations. The class then votes to accept or reject the paper for our conference. The vote is by written ballot..
Presentations are expected to start in March. More information will be provided later.
Project (due end of the term)
This course requires that you complete a term
project. This project is of your own choice and may be done in a group. This project must be in the area of distributed or
operating systems. The project should have a sufficiently
challenging component and have some "risk". A typical
project would be implementation-based or may include a
simulation. However, in some cases a significant
paper-design will be accepted. The exact project will be
determined by groups with significant input from the instructor.
A
project can propose a new idea. This often requires a proof of
concept in the form of a detailed design document and a either a
simulation or an implementation. A project can take an idea or
system from an existing paper and experiment with it. Another
project can involve the development of a distributed application with
characterstics that are new. Each project requires a
presentation/ and/or demo and a final project report in the form of a
conference paper. Dates for the project are the following:
- Feb 10: Project proposal (2 to 3 pages)
- March 8: Progress report (2 to 3 pages)
- Presentation date: to be determined
- April 30: Report is handed in
Topics
Topics include the following:- Cloud Data Processing: e.g., Google's Map reduce, Yahoo's Pig Latin, Microsoft's Dryad
- Cloud File Systems: e.g., Google File System
- Cloud Data Models: e.g., Google's BigTable, Facebook's Cassandra
- Green Computing
- Dynamic Resource Allocation
Scholastic Offences
Assignments
Academic dishonesty in assignments includes (but is not limited to):
- unacceptable collaboration
What is unacceptable? There is a difference between discussing assignments and solutions with fellow students, and working together on the solutions to the point where the work submitted is clearly not individual work. If in doubt, ask your instructor. - copying of another student's assignment
- allowing another student to copy
- using code from an external source (text, instructor, course website) where a student's own code is expected ( if in doubt, ask your instructor)
- altering of assignment results.
Assignments that are judged to be the result of academic dishonesty will, for the student's first offence, be given a mark of zero with an additional penalty equal to the weight of the assignment also being applied. The assignment(s) in question will be kept by the Department.
We expect our students to conduct themselves academically in a manner that upholds the integrity and reputation of our academic programs. Cheating on assignments or exams is considered to be a serious violation of ethical conduct, and will not be tolerated.
Essays, Term Papers and Project Reports
Plagiarism is a serious academic offence. The UWO Senate Academic Handbook defines plagiarism as "The act of appropriating the literary composition of another, or parts or passages of his writings, or the ideas or language of the same, and passing them off as the product of one's own mind." ( Excerpted from H.C. Black, Black's Law Dictionary, West Publishing Co., 1979, 5th ed., p. 1035.)
Students must write their essays and term papers in their own words. Whenever you take an idea or a passage of text from another author, you must acknowledge the source both by using quotation marks where appropriate, and by properly attributing it to the author by using a citation or footnotes. For further clarification of what constitutes plagiarism, refer to the paper titled "Collaboration, Plagiarism, and Proper Attribution" by Professor Jamie Andrews. If in doubt, consult with your instructor.
An essay, term paper of project report that is judged to be the result of academic dishonesty will result in a zero in the course.
Scholastic Offences (Graduate Students)
The instructor will report all scholastic offences to the Graduate Chair. The Graduate Chair in consultation with the Dean of Graduate Studies (see page 26 of the Graduate Calendar) will make a final decision on the penalty.
The Graduate Chair will recommend to the Dean of Graduate Studies required withdrawal from the university for a second offense.