FIT3142 - Distributed computing - 2019

6 points, SCA Band 2, 0.125 EFTSL

Undergraduate - Unit

Refer to the specific census and withdrawal dates for the semester(s) in which this unit is offered.


Information Technology

Chief examiner(s)

Dr Carlo Kopp

Unit guides



  • Second semester 2019 (On-campus)


(FIT2069 or FIT3159) and (FIT2070 or FIT2100) and one of (FIT3141, ECE2041Not offered in 2019, ECE3141 or FIT3165) OR (FIT2100 and FIT3165) OR ((FIT1005 or FIT2008) and FIT2022)


Modern computer systems rely increasingly on distributed computing mechanisms, implemented often as clusters, web services, grids and clouds. Distributed computing systems can provide seamless (or web-like) access to a variety of networked resources, e.g. processing cores, large data stores and information repositories, expensive instruments, high-speed links, sensor networks, and multimedia services for a wide range of applications. This unit provides foundation knowledge and understanding of the basic mechanisms required to implement distributed computing systems, especially clouds, grids, web services and clusters. Topics covered include: Introduction to parallel and distributed computing mechanisms, concurrency and synchronisation, monitors, deadlocks, concurrent program analysis, computational and service-oriented grids, clusters and clouds. Distributed applications, and their performance and reliability in relation to processor and network performance constraints.


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

  1. analyse and evaluate interprocess communications in networks, and associated programming interfaces;
  2. analyse and evaluate remote procedure call and remote object request broker mechanisms in distributed systems;
  3. analyse and model basic problems in distributed computing, especially in relation to concurrency, parallelism, synchronisation, deadlocks, and safety properties;
  4. analyse and evaluate differences between various distributed computing models and widely used distributed computing schemes;
  5. analyse, evaluate and model basic functional and performance concepts in distributed systems and identify frequent causes of performance problems in distributed applications;
  6. analyse and model basic software and hardware reliability problems in distributed systems and identify frequent causes of reliability problems in distributed applications;
  7. analyse and evaluate some of the enabling technologies e.g. high-speed links, for building computer clusters, distributed storage systems, grids and clouds;
  8. analyse and evaluate the operating principles of the cloud computing, grid computing, clustering, and web services middleware used to implement large distributed systems, including basic security mechanisms;
  9. analyse and model in application scalability in distributed systems, and criteria for porting applications to distributed systems;
  10. implement programs using common distributed computing programming interfaces, including sockets, and some higher level APIs.


NOTE: From 1 July 2019, the duration of all exams is changing to combine reading and writing time. The new exam duration for this unit is 2 hours and 10 minutes.

Examination (2 hours): 60%; In-semester assessment: 40%

Workload requirements

Minimum total expected workload equals 12 hours per week comprising:

  1. Contact hours for on-campus students:
    • Two hours of lectures
    • One 2-hour laboratory
    • One 1-hour tutorial
  2. Additional requirements (all students):
    • A minimum of 7 hours independent study per week for completing lab and assignment work, private study and revision.

See also Unit timetable information

This unit applies to the following area(s) of study