Course syllabus

Course Description

This course focuses on programming models, algorithms and techniques for developing distributed applications and systems. The topics include: parallel and distributed programming models, distributed searches, minimal spanning trees, distributed consensus (e.g. Byzantine agreement), the CAP theorem, logical time, multicast, mutex, garbage collection, snapshots, deadlock detection, web caching, resource looking up in P2P system, cloud computing.

 

Staff

  • Radu Nicolescu (r.nicolescu@auckland.ac.nz)

Room: 303.587

Office hours: 

  • Xinfeng Ye (xinfeng@cs.auckland.ac.nz)

Room: 303.589

Office hours: whenever I am around or email me for appointment

 

Course Outcomes (Numbers in brackets refer to corresponding BSc Graduate Profile themes)

A student will be:

  1. able to analyze and evaluate problems and draw on the theoretical and technical knowledge to develop distributed solutions and systems (1,2,3,4,5)
  2. understand the main models of distributed systems – synchronous vs asynchronous - their runtime complexity measures and why these matter (1,2,3,4)
  3. aware of the complexity of distributed searches under different distributed models (1,2,3,4)
  4. understand different ways in representing orders in distributed systems and the complexity of different approaches (1,2,3,4)
  5. aware of the complexity in capturing the state of a distributed system and understand different ways in capturing the states of distributed systems (1,2,3,4)
  6. understand the problem and the solutions for reaching consensus in distributed systems and its applications (1,2,3,4)
  7. understand different ways in locating resources in P2P systems and some applications of P2P systems (1,2,3,4)
  8. understand the technologies for improving the efficiencies of Internet applications (1,2,3,4)
  9. critically understand the theoretical limits imposed by the system distribution (1,2,3,4)

 

Assessment 

The assignments are worth 40% in total.

Assignment 1:

    • weight: 10%
    • expected hours: 7.5

Assignment 2:

    • weight: 10%
    • expected hours: 7.5

Assignment 3:

    • weight: 20%
    • expected hours: 15

Exam: 60%

 

Lecture Recordings

All lectures are recorded. There may be a delay of 1-2 days before the lecture recordings are distributed through Canvas. Note that although the lectures are recorded, some learning activities conducted in class do not translate well to the recordings. To maximize your learning opportunities, you are encouraged to attend the class in person.

 

Help with Canvas

For help with Canvas see: http://www.canvas.ac.nz

 

Handling illness or absence

If you must leave for family emergencies etc., PLEASE talk to the lecturer, or somehow get a message to the department. Very few problems are so urgent that we cannot be told quite quickly.
For problems affecting assignments or tests, see the lecturer, as soon as reasonably possible.
For illness, during exams (or other problems that affect exam performance) students MUST contact the University within one week of the last affected examination, to apply for an aegrotat pass (for illness) or compassionate pass (other problems). The one week limit is strictly enforced.
Refer to the University information about Aegrotat and Compassionate Considerations:
https://www.auckland.ac.nz/en/for/current-students/cs-academic-information/cs-examination-information/cs-aegrotat-and-compassionate-consideration.html

 

Academic Integrity
The University of Auckland will not tolerate cheating or assisting others to cheat, and views cheating in coursework as a serious academic offence. The work that a student submits for grading must be the student's own work, reflecting his or her learning. Where work from other sources is used, it must be properly acknowledged and referenced. This requirement also applies to sources on the world-wide-web. A student's assessed work may be reviewed against electronic source material using computerized detection mechanisms. Upon reasonable request, students may be required to provide an electronic version of their work for computerized review.
Please refer to http://www.auckland.ac.nz/uoa/home/about/teaching-learning/honesty.

Course summary:

Date Details Due