Advanced Computer Systems (ACS)

Course content

The overall purpose of this course is to offer students an understanding of techniques in computer systems with a focus on correctness and adherence to system properties, such as modularity and atomicity, while at the same time achieving high performance. The course exposes students to various system mechanisms, especially from distributed systems, database systems, and network systems. 

The course will explore the following aspects:

  • System abstractions and design principles
  • Modularity with clients and services
  • Performance
  • Atomicity and transactions
  • Concurrency control and recovery
  • Reliability, fault-tolerance, and redundancy
  • Distributed protocols for replication
  • Large-scale data processing

MSc Programme in Computer Science

Learning outcome

Knowledge to

  • Describe the design of transactional and distributed systems, including techniques for modularity, performance, and fault tolerance.
  • Explain how to employ strong modularity through a client-service abstraction as a paradigm to structure computer systems, while hiding the complexity of implementation from clients.
  • Explain techniques for large-scale data processing.    


Skills to

  • Implement systems that include mechanisms for modularity, atomicity, and fault tolerance.
  • Structure and conduct experiments to evaluate a system's performance.


Competences to

  • Discuss design alternatives for a modular computer system, identifying desired system properties as well as describing mechanisms for improving performance while arguing for their correctness.
  • Analyse protocols for concurrency control and recovery, as well as for distribution and replication.
  • Apply the principles of large-scale data processing to analyse concrete information-processing problems.


Lectures and exercise sessions.

See Absalon when the course is set up.

- Basic principles of operating systems and/or databases.
- Working knowledge of a standard programming language (Java, C#, etc), including concurrency and communication mechanisms.
- Notions of UNIX / shell scripting are helpful, but not required.
- Academic qualifications equivalent to a BSc degree is recommended.

Continuous feedback during the course of the semester

Written feedback is provided as comments to assignment solutions in Absalon.
Continuous feedback is provided during exercise classes, where a time window of each class is allocated for Q&A with teaching assistants.

7,5 ECTS
Type of assessment
Written examination, 4 hours under invigilation
Type of assessment details
The course has been selected for ITX exam
See important information about ITX-exams at Study Information, menu point: Exams -> Exam types and rules -> Written on-site exams (ITX)
Exam registration requirements

4-6 take home-assignments, marked as pass/fail. To qualify for the exam the assignments must be passed.

All aids allowed

This includes books, notes and computer but not access to the internet.

As the exam is an ITX-exam, the University will make computers available to students at the exam. Students are therefore not permitted to bring their own computers, tablets, calculators, or mobile phones.

Marking scale
7-point grading scale
Censorship form
External censorship

If a student is not qualified for the exam, qualification can be achieved by approval of equivalent assignments submitted no later than 3 weeks before the re-exam.

The re-exam is a 4 hours written exam under invigilation. 

If 10 or fewer students are registered, then the re-exam will be held as an oral examination of 25 minutes without preparation.



Criteria for exam assessment

See Learning Outcome.

Single subject courses (day)

  • Category
  • Hours
  • Lectures
  • 42
  • Theory exercises
  • 70
  • Project work
  • 90
  • Exam
  • 4
  • English
  • 206


Course number
7,5 ECTS
Programme level
Full Degree Master

1 block

Block 2
No limit
The number of seats may be reduced in the late registration period
Study Board of Mathematics and Computer Science
Contracting department
  • Department of Computer Science
Contracting faculty
  • Faculty of Science
Course Coordinator
  • Dmitriy Traytel   (7-7674637b76676e42666b306d7730666d)

Yongluan Zhou
Dmitriy Traytel

Saved on the 11-05-2023

Are you BA- or KA-student?

Are you bachelor- or kandidat-student, then find the course in the course catalog for students:

Courseinformation of students