Computers and the Cloud - COMP3370

Looking for a different module?

Module delivery information

Location Term Level1 Credits (ECTS)2 Current Convenor3 2023 to 2024
Autumn Term 4 15 (7.5) Matteo Migliavacca checkmark-circle


This module equips students with an understanding of how modern cloud-based applications work. Topics covered may include:
• A high-level view of cloud computing: the economies of scale, security issues, ethical concerns, the typical high-level architecture of a cloud-based application, types of available services (e.g., parallelization, data storage).
• Cloud infrastructure: command line interface; containers and virtual machines; parallelization (e.g., MapReduce, distributed graph processing); data storage (e.g., distributed file systems, distributed databases, distributed shared in-memory data structures).
• Cloud concepts: high-level races, transactions and sequential equivalence; classical distributed algorithms (e.g., election, global snapshot, consensus, distributed mutual exclusion); scheduling, fault-tolerance and reliability in the context of a particular parallelization technology (e.g., MapReduce).
• Operating system support: network services (e.g., TCP/IP, routing, reliable communication), virtualization services (e.g., virtual memory, containers)


Contact hours

22 contact hours
128 private study hours
Total hours: 150

Method of assessment

Main assessment methods
The module is assessed 50% coursework and 50% examination:
40% two practical assignments (equally weighted, approximately 20 hours of work each)
10% two online quizzes, focused on theory (equally weighted, approximately 5 hours of work each)
50% two-hour examination

Reassessment methods
Like for like

Indicative reading

• Armbrust et al., A view of Cloud Computing, CACM, 2010
• Leskovec et al, Mining of Massive Datasets, 2014, Chapter 2
Further reading material will be recommended by individual lecturers.

See the library reading list for this module (Canterbury)

Learning outcomes

8. The intended subject specific learning outcomes.
On successfully completing the module students will be able to:
8.1. Describe the architecture of a modern distributed computing application.
8.2. Describe trade-offs involved in developing an application based in the cloud versus on one's own hardware: economic trade-offs, security trade-offs, sustainability trade-offs, and ethical trade-offs.
8.3. Install and configure an existing cloud-based application.
8.4. Describe the existing cloud infrastructure, for organising computations and for storing data.
8.5. For a given problem, select the appropriate classical distributed algorithm to solve it.
8.6. Explain how operating systems support the cloud infrastructure (for example, by providing network services, and by providing virtualization services).

9. The intended generic learning outcomes.
On successfully completing the module students will be able to:
9.1. Communicate their understanding of technical problems and their solutions.
9.2. Make effective use of IT facilities.
9.3. Manage their time and resources effectively.


  1. Credit level 4. Certificate level module usually taken in the first stage of an undergraduate degree.
  2. ECTS credits are recognised throughout the EU and allow you to transfer credit easily from one university to another.
  3. The named convenor is the convenor for the current academic session.
Back to top

University of Kent makes every effort to ensure that module information is accurate for the relevant academic session and to provide educational services as described. However, courses, services and other matters may be subject to change. Please read our full disclaimer.