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).
Total contact hours: 25
Private study hours: 125
Total study hours: 150
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.
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)
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.
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.