Course details

Distributed Application Environment

PDI Acad. year 2022/2023 Winter semester 5 credits

Common characteristics of distributed environments. Principles, algorithms, and systems of distributed computing. Types of distributed environments. Design and model of distributed algorithms. Distributed operating and file systems. Cloud Computing. Data-centric computing. Technology JSP, J2EE, JavaBeans, EJB, RPC, XML-RPC, SOAP, IIOP. Web services. Security in distributed applications.


Course coordinator

Language of instruction

Czech, English


Examination (written)

Time span

  • 26 hrs lectures
  • 6 hrs pc labs
  • 20 hrs projects

Assessment points

  • 55 pts final exam (written part)
  • 15 pts mid-term test (written part)
  • 10 pts labs
  • 20 pts projects




Subject specific learning outcomes and competences

The students will become familiar with concepts and principles of distributed environments, with the design and implementation of applications for distributed environments and security aspects in distributed environments.

  • A student learns terminology in the domain of DS
  • A student learns to create small projects
  • A student learns to present and defend the results of the small project

Learning objectives

The aim is to understand the principles and design of applications for distributed environments, obtain an overview of modern distributed environments, and ability of usage application interfaces for various programming environments.

Why is the course taught

The course acquaints students with current technologies of distributed systems, which will enable them to participate in the development of modern applications for large data processing.

Prerequisite knowledge and skills

  • knowledge of programming
  • knowledge discrete mathematics
  • basic knowledge of computer networks

Technical equipment

Běžné počítačové vybavení a vývojové nástroje pro zvolený programovací jazyk. K dispozici je také výpočetní mini cluster pro tvorbu a demonostraci projektů. 

Study literature

  • B. Burns: Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services,  O'Reilly Media, 1st edition, 2018.
  • S. Saxena, S. Gupta: Real-Time Big Data Analytics,  Packt Publishing, 2016.

Fundamental literature

  • Kshemkalyani, Singhal: Distributed Computing, Cambridge Press, 2008.

Syllabus of lectures

  1. Principles and models of distributed computation
  2. Physical and Logical Time 
  3. Global State and Snapshot Algorithms 
  4. Group communication
  5. Authentication in Distributed Systems 
  6. Graph and Routing Algorithms
  7. Algorithms of Leader Election and Mutual Exclusion
  8. Virtualization and Cloud Computing
  9. MapReduce Programming Model and Apache Hadoop 
  10. Principles of Apache Spark
  11. Distributed Stream Processing in Apache Flink
  12. Enterprise Service Bus 
  13. Distributed computing with BOINC

Syllabus of computer exercises

  1. Apache Hadoop/Spark
  2. Windows Azure Applications

Syllabus - others, projects and individual work of students

  • Implementation of a distributed application in the given target environment (Spark, Flink, Azure, Hadoop,...).

Progress assessment

  • Mid-term written examination - 15 points
  • Laboratory exercises - 10 points
  • Evaluated project with the defense - 20 points
  • Final written examination - 55 points

Controlled instruction

  • Scored laboratory exercises for which at least two terms are listed. The possibility of replacement only in case of objective and proven obstacles in the study.
  • Mid-term exam in the lecture.
  • Evaluated projects with defense in the form of presentation of results.

Exam prerequisites

  • not applicable


Mon exam 2023-01-09 E112 12:0013:30řádná
Tue exam 2023-01-24 C311 09:0010:302. oprava
Tue lecture 1., 2., 3., 4., 5., 6., 7. of lectures D0207 14:0015:5090 1MIT 2MIT NADE NNET xx Ryšavý
Tue lecture 9., 10., 11., 12. of lectures D0207 14:0015:5090 1MIT 2MIT NADE NNET xx Rychlý
Tue lecture 2022-11-08 D0207 14:0015:5090 1MIT 2MIT NADE NNET xx Jeřábek
Tue lecture 2022-12-13 D0207 14:0015:5090 1MIT 2MIT NADE NNET xx Hranický
Wed other 2022-11-30 N103 N104 N105 09:0011:00Cvičení Microsoft Azure
Wed comp.lab 2022-11-23 N103 N104 N105 09:0010:5040 1MIT 2MIT xx Rychlý
Wed comp.lab 2022-11-30 N103 N104 N105 09:0011:5060 1MIT 2MIT xx Pluskal
Wed exam 2023-01-18 A112 16:0017:301. oprava

Course inclusion in study plans

Back to top