Skip to navigation | Skip to main content | Skip to footer
Menu
Menu

This is an archived syllabus from 2013-2014

COMP28112 Distributed Computing syllabus 2013-2014

COMP28112 Distributed Computing

Level 2
Credits: 10
Enrolled students: 143

Course leader: Rizos Sakellariou


Additional staff: view all staff

Requisites

  • Pre-Requisite (Compulsory): COMP18112
  • Pre-Requisite (Compulsory): COMP16212
  • Pre-Requisite (Optional): COMP25111

Assessment methods

  • 80% Written exam
  • 20% Practical skills assessment
Timetable
SemesterEventLocationDayTimeGroup
Sem 2 Lecture 1.1 Tue 13:00 - 13:00 -
Sem 2 Lecture 1.1 Mon 13:00 - 13:00 -
Sem 2 B Lab G23 Tue 11:00 - 11:00 I
Sem 2 B Lab LF31 Fri 11:00 - 11:00 G
Themes to which this unit belongs
  • Web and Distributed Systems

Overview

Many of the most important and visible uses of computer technology rely on distributed computing. Understanding distributed computing requires an understanding of the problems and the challenges stemming from the coordinated operation of different hardware and software. The course focuses on a set of common techniques required to address the key challenges of distributed computing.

Aims

Many of the most important and visible uses of computer technology rely on distributed computing. This course unit aims to build on the course unit in the first year (COMP10052) which introduced students to the principles of distributed computing, and it focuses on techniques and methods in sufficient breadth and depth to provide a foundation for the exploration of specific topics in more advanced course units. The course unit assumes that students have already a solid understanding of the main principles of computing within a single machine, have a rudimentary understanding of the issues related to machine communication and networking, and have been introduced to the area of distributed computing.

Syllabus

Introduction

Revision of the characteristics of distributed systems. Challenges. Architectural models.

Remote Invocation and Distributed Objects

Java RMI, CORBA, Web Services.

Message-Oriented middleware

Synchronous vs asynchronous messaging. Point-to-point messaging. Publish-subscribe.

Concurrency, co-ordination and distributed transactions

Ordering of events. Two-phase commit protocol. Consensus.

Caching and Replication

Security

Service-Oriented Architectures, REST and Web Services

Teaching methods

Lectures

22 in total, 2 per week

Laboratories

10 hours in total, 5 2-hour sessions

Feedback methods

Formative feedback based on assessment of different solutions to problems relevant to the module or area of weakness from previous years. Feedback is also provided by demonstrators in the laboratory.

Study hours

  • Assessment written exam (2 hours)
  • Lectures (24 hours)
  • Practical classes & workshops (12 hours)

Employability skills

  • Analytical skills
  • Innovation/creativity
  • Problem solving

Learning outcomes

On successful completion of this unit, a student will be able to:

Learning outcomes are detailed on the COMP28112 course unit syllabus page on the School of Computer Science's website for current students.

Reading list

TitleAuthorISBNPublisherYear
Distributed systems : concepts and design Coulouris, George F., author.9781447930174Pearson Education Limited2012
Distributed systems Steen, Maarten van, author.9781543057386Maarten van Steen2017

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.