CSCI5600 Advanced Topics in Distributed Systems

 

Course code CSCI5600
Course title Advanced Topics in Distributed Systems
分佈式系統進階
Course description This course aims to cover research topics on distributed systems. Topics including distributed time and global states, distributed coordination and consensus, P2P systems, distributed transactions and concurrency control, distributed replications and synchronization. Case studies about latest distributed systems such as Chord, Paxos and Spanner and research papers from top conferences will be discussed.
Advisory: Students are expected to have solid foundations on operating systems and database systems.
本科旨在涵蓋分佈式系統的研究課程。主題包括分佈式時間和全局狀態,分佈式協調和共識,分佈式事務和並發控制,P2P系統,分佈式複制和同步。還包括有關Chord,Paxos和Spanner等最新分佈式系統的案例研究和頂尖學術文章的討論。
建議:學生應在操作系統和數據庫系統上有堅實的基礎 。
Unit(s) 3
Course level Postgraduate
Pre-requisites CSCI3150 & CSCI3170 (for UG students)
Semester 1 or 2
Grading basis Graded
Grade Descriptors A/A-:  EXCELLENT – exceptionally good performance and far exceeding expectation in all or most of the course learning outcomes; demonstration of superior understanding of the subject matter, the ability to analyze problems and apply extensive knowledge, and skillful use of concepts and materials to derive proper solutions.
B+/B/B-:  GOOD – good performance in all course learning outcomes and exceeding expectation in some of them; demonstration of good understanding of the subject matter and the ability to use proper concepts and materials to solve most of the problems encountered.
C+/C/C-: FAIR – adequate performance and meeting expectation in all course learning outcomes; demonstration of adequate understanding of the subject matter and the ability to solve simple problems.
D+/D: MARGINAL – performance barely meets the expectation in the essential course learning outcomes; demonstration of partial understanding of the subject matter and the ability to solve simple problems.
F: FAILURE – performance does not meet the expectation in the essential course learning outcomes; demonstration of serious deficiencies and the need to retake the course.
Learning outcomes At the end of the course of studies, students will have acquired the ability to
1. Understand what kinds of distributed systems out there and their differences.
2. Understand the technology behind distributed systems, such as distributed consensus and gossip protocol.
3. Understand the applications of distributed systems in different domains.
Assessment
(for reference only)
Essay test or exam: 50%
Homework or assignment: 50%
Recommended Reading List 1. Distributed Systems: Concepts and Design: George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. 5th edition, Addison-Wesley.
2. Principles of Distributed Database Systems: Tamer Ozsu, Patrick Valduriez. Springer.
3. Distributed Systems Reading List: https://dancres.github.io/Pages/

 

CSCIN programme learning outcomes Course mapping
Upon completion of their studies, students will be able to:  
1. identify, formulate, and solve computer science problems (K/S);
2. design, implement, test, and evaluate a computer system, component, or algorithm to meet desired needs (K/S);
3. receive the broad education necessary to understand the impact of computer science solutions in a global and societal context (K/V);
4. communicate effectively (S/V);
5. succeed in research or industry related to computer science (K/S/V);
6. have solid knowledge in computer science and engineering, including programming and languages, algorithms, theory, databases, etc. (K/S);
7. integrate well into and contribute to the local society and the global community related to computer science (K/S/V);
8. practise high standard of professional ethics (V);
9. draw on and integrate knowledge from many related areas (K/S/V);
Remarks: K = Knowledge outcomes; S = Skills outcomes; V = Values and attitude outcomes; T = Teach; P = Practice; M = Measured