184.260 Distributed Systems Technologies
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2020S, VU, 4.0h, 6.0EC


  • Semester hours: 4.0
  • Credits: 6.0
  • Type: VU Lecture and Exercise

Learning outcomes

After successful completion of the course, students are able to implement distributed enterprise applications using appropriate modern distributed systems technologies. They understand the theory and concepts underlying these technologies, and are therefore able to relate other or new technologies to corresponding problems in distributed systems (e.g., remoting, distributed transactions, caching, API descriptions, messaging, monitoring, or auto scaling). Students are therefore able to make informed decisions about which technolgies to use during both design and development phases of distributed enterprise applications.

Subject of course

client-server, n-tier systems, object-related mappings, non-relational data models (NoSQL), presentation-layer technologies (web framework), integration technologies (EAI, web services), container technologies (e.g., Docker), aspect-oriented middleware, message oriented middleware, metaprogramming

The course consists of a lecture, providing the required theoretical information, and a lab with several programming assignments for an in-depth understanding of the course topics. Furthermore, lab practice lessons will be held for presentation and discussion of the assignments. Moreover, these practice lessons serve to align implementation and the corresponding theory (which is mainly the content of the lecture).

Lecture schedule (preliminary):

Please check TUWEL for further information regarding the lecture schedule, and links to live streams!

We., 04.03.2020: Introduction and general course information (12:00-13:00)
We., 18.03.2020: 1st Lecture
We., 25.03.2020: 2nd Lecture
We., 01.04.2020: 3rd Lecture
We., 13.05.2020: 4th Lecture
We., 20.05.2020: 5th Lecture 

We., 24.06.2020: Exam (main date)
October 2020: Exam (alternative exam)

Teaching methods

  • Lab part:
    • Individual development of selected components within a distributed enterprise application. The used technologies and a code framework are given as basis
    • A total of three submissions during the course of the semester 4-5 weeks appart
    • Discussion sessions after each submissions in which students present and discuss their solutions
  • Lecture part
    • Accompanying classroom lecture
    • Optional written exam

Mode of examination


Additional information

Attendance is only required for the practical group sessions.

Please direct personal or administrative questions to dst@dsg.tuwien.ac.at



Course dates

Wed12:00 - 14:0004.03.2020 - 11.03.2020HS 17 Friedrich Hartmann - ARCH Lecture
Distributed Systems Technologies - Single appointments
Wed04.03.202012:00 - 14:00HS 17 Friedrich Hartmann - ARCH Lecture
Wed11.03.202012:00 - 14:00HS 17 Friedrich Hartmann - ARCH Lecture

Examination modalities

The grade is determined by the lab part (75%) and the lecture part (25%)

  • Lab part: We grade the completeness and correctness of the individual implementationm, as well as the discussion of results during the group sessions.
  • Lecture part: The optional exam covers subjects from the classroom lecture


  • 6 ECTS, corresponds to roughly 150h
  • roughly 25% Lecture part, roughly 75% practical part (Lab) = 36h Lecture, 114h Lab
  • Lecture: 8h
  • Lecture exam (preparation and writing the exam): 28h
  • Lab Assignment 1: 36h
  • Lab Session 1: 2h
  • Lab Assignment 2: 36h
  • Lab Session 2: 2h
  • Lab Assignment 3: 36h
  • Lab Session 3: 2h

Course registration

Begin End Deregistration end
02.03.2020 12:00 02.04.2020 13:00 02.04.2020 13:00

Group Registration

GroupRegistration FromTo
G104.03.2020 18:0026.03.2020 09:00
G204.03.2020 18:0026.03.2020 09:00
G304.03.2020 18:0026.03.2020 09:00
G404.03.2020 18:0026.03.2020 09:00
G504.03.2020 18:0026.03.2020 09:00
G604.03.2020 18:0026.03.2020 09:00



See course homepage.

Previous knowledge

Knowledge of distributed systems, software engineering, databases, SQL, and object-oriented programming. Good programming skills in Java

Preceding courses

Accompanying courses


  • Attendance Required!