Course: Distributed Computing Environments

« Back
Course title Distributed Computing Environments
Course code KIV/DCE
Organizational form of instruction Lecture + Tutorial
Level of course Master
Year of study 2
Semester Winter
Number of ECTS credits 6
Language of instruction Czech
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Brenkus David, Ing. Ph.D.
Course content
1. Basic cloud service layers, cloud reference model, main benefits of cloud computing 2. Cloud architectures, cloud services layers, virtualization 3. Basic cloud services types, overview and comparison of current implementations 4. Private, public and hybrid cloud services 5. Cloud native applications and their architecture 6. Containers - assembly, deployment and orchestration; architecture as code 7. Designing and scaling cloud services and applications 8. Data sharing in cloud applications, distributed file systems 9. Failure-resilient cloud aplications 10. Cloud-native applications CI/CD 11. Cloud services and applications security 12. Debugging and monitoring cloud/ native applications 13. Edge computing and IoT

Learning activities and teaching methods
  • Graduate study programme term essay (40-50) - 50 hours per semester
  • Preparation for an examination (30-60) - 45 hours per semester
  • Contact hours - 65 hours per semester
prerequisite
Knowledge
Be able to apply elementary knowledge of computer networks.
Be able to apply knowledge of operating systems basic, especially Unix/Linux.
Be able to apply knowledge of process communication and coordination in distributed systems.
Be familiar with replication concepts and consistency models in distributed systems.
Be able to design and formally describe synchronous and asynchronous application interfaces of servers/processes.
Skills
Be familiar with the command line interface of the Unix/Linux operating systems, namely commands related to networking.
Be able to analyze and solve problems related to networking.
Be able to compose and deploy distributed applications.
Be able to debug distributed software.
Competences
N/A
N/A
learning outcomes
Knowledge
Be familiar with the field of cloud services, particlarly their types and architecture.
Demonstrate thorough knowledge of cloud-native application development, deployment and operation.
Demonstrate knowledge of techniques and types of cloud-native application scaling.
Demonstrate knowledge in the field of CI/CD of cloud-native applications.
Demonstrate knowledge in the field of security, fault-tolerance, debugging and monitoring of cloud-native applications.
Skills
Have practical experience with cloud-native applications.
Have practical experiance with composing cloud-native applications using containers.
Be familiar with elementary cloud services and be able to use them programatically in cloud-native applications.
Have practical experience with defining infrastructure/architecture as code.
Have practical experience with CD/CD of cloud-native applications and cloud infrastructure/architecture.
Competences
N/A
teaching methods
Knowledge
Lecture supplemented with a discussion
Group discussion
Self-study of literature
Skills
Practicum
Skills demonstration
Group discussion
Competences
Interactive lecture
assessment methods
Knowledge
Written exam
Continuous assessment
Skills
Skills demonstration during practicum
Continuous assessment
Competences
Written exam
Recommended literature
  • Burns, Brendan. Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services. O?Reilly, 2018. ISBN 978-1-492-03177-2.
  • Fehling, Ch.; Leymann, F.; Retter, R.; Schupeck, W; Arbitter, P. Cloud Computing Patterns: Fundamentals to Design, Build, and Manage Cloud Applications. Springer-Verlag Wien, 2014. ISBN 978-3-7091-1.
  • Hwang, Kai; Fox, Geofrey C.; Dongarra, Jack J. Distributed and Cloud Computing: From Parallel Processing to the Internet of Things. Morgan Kaufman (Elsevier), 2012. ISBN 978-0-12-385880-1.
  • Marinescu, Dan C. Cloud Computing - Theory and Practice. 2nd ed.. Morgan Kaufman (Elsevier), 2018. ISBN 978-0-12-812819-7.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester