Course details

Distributed Application Environment

PDI Acad. year 2020/2021 Winter semester 5 credits

Current academic year

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


Deputy Guarantor

Language of instruction



Examination (written)

Time span

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

Assessment points

55 exam, 15 mid-term test, 10 exercises, 20 projects




Hranický Radek, Ing. (DIFS FIT BUT)
Pluskal Jan, Ing. (DIFS FIT BUT)
Rychlý Marek, RNDr., Ph.D. (DIFS FIT BUT)

Subject specific learning outcomes and competences

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

Generic learning outcomes and competences

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

Learning objectives

The aim is to understand principles and design of applications for distributed environment, obtain overview of modern distributed environments and ability of usage application interface 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 kwnowledge and skills

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

Study literature

  • B. Burns: Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services,  O'Reilly Media, 1st edition, 2018.
  • S. Kshemkalyani: Distributed Computing, Cambridge Press, 2008.
  • selected research papers

Fundamental 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.
  • S. Kshemkalyani: Distributed Computing, Cambridge Press, 2008.
  • A. Tanenbaum, M. Steen: Distributed Systems: Principles and Paradigms. Prentice Hall, 2002, ISBN: 0130888931

Syllabus of lectures

  1. Principles of DS, Models of DS
  2. Logical Time
  3. Global State
  4. Group Communication, Election 
  5. Distributed Algorithms
  6. Interprocess Communication
  7. Cloud Technologies
  8. Map Reduce Programming Model
  9. Web Services
  10. Message Passing Interface
  11. Enterprise Service Bus
  12. Containers
  13. Complex Event Processing

Syllabus of laboratory exercises

  1. Apache Hadoop
  2. Microsoft Azure

Syllabus - others, projects and individual work of students

  • Implementation of distributed application in the given target environment (CORBA, 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 defence in the form of presentation of results.

Exam prerequisites

  • not applicable

Course inclusion in study plans

Back to top