Computer Engineering MA, Distributed Systems, 9 credits


Computer Engineering MA, Distributed Systems, 9 credits

General data

  • Code: DT050A
  • Subject/Main field: Computer Engineering
  • Cycle: Second cycle
  • Credits: 9
  • Progressive specialization: A1N - Second cycle, has only first-cycle course/s as entry requirements
  • Answerable department: Information Systems and Technology
  • Answerable faculty: Faculty of Science, Technology and Media
  • Established: 2/14/2018
  • Date of change: 8/5/2021
  • Version valid from: 7/1/2021


This course aims to give both basic and enhanced knowledge regarding the architectures of distributed systems, as well as the methods for constructing these types of systems. In particular, the course deals with distributed system design, the problems they solve, and their implementations. Approached from an analytical and algorithmic point of view as well as a research and development perspective. Including models for distributed systems and common algorithms, techniques for interprocess communication, replication, synchronization, consistency, fault tolerance and security.

Course objectives

The student should after completed course be able to:
- Describe distributed systems and their potential advantages
- Explain and describe the properties of a well-structured dynamic distributed system
- Contrast distributed systems against other systems, including how they affect each other
- Describe existing distributed applications and design new ones
- Develop and implementing a secure, reliable, and efficient distributed system
- Evaluate existing systems with consideration of communication and security


- Overview of distributed systems and existing applications
- Communication, co-ordination, and synchronization within distributed systems
- Distributed clock, logic time, and global states
- Naming in distributed systems
- Consistency and replication
- Distributed transaction and interprocess communication
- Reliable group communication and fault tolerance

Entry requirements

90 credits finished courses, with at least 60 credits in Computer Engineering BA (ABC), including 15 credits programming and 6 credits computer networks.

Selection rules and procedures

The selection process is in accordance with the Higher Education Ordinance and the local order of admission.

Teaching form

The course consists of a series of lectures, laboratory exercises, study assignments and student seminars. The lectures present the necessary background theory and knowledge. In the laboratory exercises, the students’ knowledge and skills are put to the test by a series of implementation challenges. In the study assignments, the students will create a deeper understanding of the theory and existing literature. Finally, in the seminars the students will do discussions and case studies of either existing distributed systems or existing research on distributed systems, as well as presenting it to their peers. Only a small part of the work time required for completing the study assignments, laboratory exercises, and seminars will be scheduled. Depending on the programming skill level of the student, the work effort is estimated to 240 hours of work.

Examination form

L101: Laboratory, 3.0 Credits
Grade scale: Fail (U) or Pass (G)

S101: Seminars, 3.0 Credits
Grade scale: Fail (U) or Pass (G)

T101: Exam, 3.0 Credits
Grade scale: Seven-grade scale, A, B, C, D, E, Fx and F. Fx and F represent fail levels.

The final grade is based on all parts of the course.

Grading criteria for the subject can be found at

The examiner has the right to offer alternative examination arrangements to students who have been granted the right to special support by Mid Sweden University’s disabilities adviser.

Grading system

Seven-grade scale, A, B, C, D, E, Fx and F. Fx and F represent fail levels.

Course reading

Reference literature

  • Author: Maarten Van Steen, Andrew S. Tanenbaum
  • Title: Distributed Systems, principles and paradigms
  • Comment: ISBN 9781543057386
  • Author: George F. Coulouris, Jean Dollimore
  • Title: Distributed Systems. Concepts and Design
  • Comment: ISBN 9780273760597
  • Author: Ajay D. Kshemkalyani och Mukesh Singhal
  • Title: Distributed Computing
  • Comment: ISBN 9780521189842

The page was updated 9/2/2014