Distributed Application Environment

IT-MSC-2MGM-Compulsory-Elective - group I
IT-MSC-2MIS2ndCompulsory-Elective - group N
IT-MSC-2MPV-Compulsory-Elective - group C
Language of Instruction:Czech
Private info:http://www.fit.vutbr.cz/study/courses/PDI/private/
Completion:examination (written)
Type of
Hour/semLecturesSem. ExercisesLab. exercisesComp. exercisesOther
Guarantor:Ryšavý Ondřej, doc. Ing., Ph.D., DIFS
Lecturer:Rychlý Marek, RNDr., Ph.D., DIFS
Ryšavý Ondřej, doc. Ing., Ph.D., DIFS
Instructor:Pluskal Jan, Ing., DIFS
Rychlý Marek, RNDr., Ph.D., DIFS
Faculty:Faculty of Information Technology BUT
Department:Department of Information Systems FIT BUT
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.
  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.
Knowledge and skills required for the course:
  • knowledge of programming
  • knowledge discrete mathematics
  • basic knowledge of computer networks
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
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 - others, projects and individual work of students:
  • Implementation of distributed application in the given target environment (CORBA, Azure, Hadoop,...).
Fundamental literature:
  • Kshemkalyani, Singhal: Distributed Computing, Cambridge Press, 2008.
  • Tanenbaum, A., Steen, M.: Distributed Systems: Principles and Paradigms. Prentice Hall, 2002, ISBN: 0130888931
Study literature:
  • Tanenbaum, A.: Modern Operating Systems. Prentice Hall, 2001, ISBN: 0130313580
  • Stevens, W.R. "UNIX Network Programming." Vol. 1, The Sockets Networking API, 2004, ISBN: 0131411551
  • Stevens, W.R. "UNIX Network Programming." Vol. 2, Interprocess Communications, 1999, ISBN: 0130810819
  • selected research papers
Progress assessment:
  • Mid-term written examination - 15 points
  • Laboratory exercises - 10 points
  • Evaluated project with the defense - 20 points
  • Final written examination - 55 points
Exam prerequisites:
  • not applicable