Skip to main content
Unit of study_

COMP3221: Distributed Systems

This unit will provide a broad introduction to the principles of distributed computing and distributed systems and their design; provide students the fundamental knowledge required to analyse, design distributed algorithms and implement various types of applications, like distance-vector routing protocol; explain the common algorithmic design principles and approaches used in the design of message passing at different scales (e.g., logical time, peer-to-peer overlay).

Code COMP3221
Academic unit Computer Science
Credit points 6
Prerequisites:
? 
(INFO1105 OR INFO1905) OR ((INFO1103 OR INFO1113) AND (COMP2123 OR COMP2823))
Corequisites:
? 
None
Prohibitions:
? 
COMP2121

At the completion of this unit, you should be able to:

  • LO1. produce professional quality written assignments and reports as well as well-documented software for reuse
  • LO2. evaluate the implications of sharing of information and the importance of privacy and security as well as appreciate the importance of ethical behaviour among users of distributed systems
  • LO3. design efficient distributed algorithms and produce distributed software based on these designs
  • LO4. understand the general properties of distributed systems. You should be familiar with various types of distributed applications and how information is shared between distributed components
  • LO5. understand programming paradigms for distributed systems (e.g. sockets) and be able to apply them to protocols
  • LO6. implement distributed algorithms. You will be able to able to apply some common distributed algorithms (e.g. searches, shortest path, trees) towards solving problems.
  • LO7. understand and implement distributed and scalable machine learning algorithms for large-scale networks.