An Introduction to Computer Systems - COMP5810

Looking for a different module?

Module delivery information

Location Term Level1 Credits (ECTS)2 Current Convenor3 2024 to 2025
Autumn Term 5 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

Total contact hours: 25
Private study hours: 125
Total study hours: 150

Method of assessment

13. Assessment methods
13.1. Main assessment methods
40% two practical assignments (equally weighted)
10% two online quizzes, focused on theory (equally weighted)
50% two-hour examination

13.2. Reassessment methods
Like for like.

Indicative reading

Marinescu, D.C., "Cloud Computing: Theory and Practice", Elsevier Inc, 2018.
Coluris, G.F, Dollimore, J., Kindberg, T., Blair, G., "Distributed Systems: Concepts and Design", Addison-Wesley, 2012.

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 and evaluate the trade-offs involved in developing an application based in the cloud versus on one's own hardware.
8.3 Describe how networks interact with operating systems and applications to provide cloud infrastructure.
8.4 Configure and monitor IT systems to effectively deliver information and services.

9. The intended generic learning outcomes.
On successfully completing the module students will be able to:
9.1 Demonstrate comprehension of the trade-offs involved in design-choices.
9.2 Make effective use of IT facilities for solving problems.
9.3 Manage their own learning and development, through self-directed study and working on continuous assessment.
9.4 Make effective use of a range of tools, such as a web-based and command line monitoring and control systems.


  1. Credit level 5. Intermediate level module usually taken in Stage 2 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.