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.
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 and assignments interviews schedules.
Due to the Covid-19 infection process, there may be a switch to a hybrid or online mode.
We., 02.03.2022: Introduction and general course information + 1st lecture (11:00 - 12:30)
We., 09.03.2022: 2nd lecture
We., 06.04.2022: 3rd lecture
We., 04.05.2022: 4th lecture
We., 11.05.2022: 5th lecture
Th., 07.04.2022; Fr., 08.04.2022: 1st assignment interviews
Th., 12.05.2022; Fr., 13.05.2022: 2nd assignment interviews
Th., 02.06.2022; Fr., 03.06.2022: 3rd assignment interviews
We., 21.06.2022: Exam (main date)
October 2022: Exam (alternative exam)
Knowledge of distributed systems, software engineering, databases, SQL, and object-oriented programming. Good programming skills in Java