Show/hide contentOpenClose All
Curricular information is subject to change
This module introduces students to distributed systems that will equip them with the knowledge underlying the design of large-scale software systems distributed on multiple computers. We will teach students how to design appropriate software architectures in accordance with enumerated requirements and constraints. First, we will help students to gain an understanding of the fundamental principles and techniques behind the design of distributed systems, such as locking, concurrency, scheduling, and communication across the network. Additionally, the students will be given the opportunities to develop their problem solving, programming and written communication skills by designing solutions to distributed system programming problems, and implementing those solutions as fully networked distributed systems.
General concepts in distributed system designs: client-server model, peer-to-peer systems, overlay networks, data/process replication, caching, scaling techniques - hierarchical architectures. Process synchronization: physical clock synchronization, notion of logical clocks, event ordering, causality of events, and vector clocks. Mutual exclusion protocols in distributed systems; Inter-process communication and coordination models - request-reply model, remote procedure call, group communication and broadcast models, reliable broadcast protocols; Data replication management protocols; Peer-to-peer systems; Distributed file systems; Security and protection -- authentication protocols and Kerberos design; Grid Computing and Web Services. Additionally a case study on designing a distributed system (exemple: Google distributed system) is discussed.
Student Effort Type | Hours |
---|---|
Lectures | 28 |
Practical | 24 |
Autonomous Student Learning | 80 |
Total | 132 |
Not applicable to this module.
Description | Timing | Component Scale | % of Final Grade | ||
---|---|---|---|---|---|
Continuous Assessment: Testing the overall knowledge and understanding of distributed system concepts. Possible assignments: practical assignment, final exam, and case study analysis. |
Varies over the Trimester | n/a | Standard conversion grade scale 40% | No | 100 |
Remediation Type | Remediation Timing |
---|---|
In-Module Resit | Prior to relevant Programme Exam Board |
• Feedback individually to students, on an activity or draft prior to summative assessment
• Feedback individually to students, post-assessment
• Group/class feedback, post-assessment
• Peer review activities
The grading scheme used will be Standard Conversion Grade Scale* 40% Pass (70% = A-)
Name | Role |
---|---|
Dr Anca Delia Jurcut | Lecturer / Co-Lecturer |
Pasika Ranaweera | Tutor |
Furqan Rustam | Tutor |