PA200 Cloud Computing

Faculty of Informatics
Spring 2022
Extent and Intensity
2/0/0. 2 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
Taught online.
RNDr. David Gešvindr, Ph.D. (lecturer)
Joao Grade (lecturer)
Guaranteed by
doc. Ing. RNDr. Barbora Bühnová, Ph.D.
Department of Computer Systems and Communications - Faculty of Informatics
Contact Person: RNDr. David Gešvindr, Ph.D.
Supplier department: Department of Computer Systems and Communications - Faculty of Informatics
Prerequisites (in Czech)
PA165 Java Enterprise Applications || PV179 System Development in C#/.NET || PV260 Software Quality
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
there are 45 fields of study the course is directly associated with, display
Course objectives
The aim of the course is to introduce students to both theoretical and practical aspects of software architecture design of PaaS cloud applications and develop critical thinking that will allow them to estimate impacts of architectural decisions on the overall quality of the designed application early during the development lifecycle. Students will also gain experience with implementing cloud applications using existing cloud services offered by multiple public cloud providers (Microsoft Azure, Amazon Web Services) and automating testing, deployment, and monitoring of cloud applications.
Learning outcomes
At the end of the course, students will:
- understand different aspects of software quality relevant to the cloud (quality attributes related to performance, scalability, availability, and costs);
- be familiar with design patterns and software architectures (e.g., microservices, serverless) applicable for the design of PaaS cloud applications;
- be able to design and implement cloud applications that fulfill both functional and non-functional requirements;
- have practical experience with implementation and deployment of PaaS cloud application using various public cloud services
  • 1. Overview of cloud computing and cloud service delivery models
  • 2. Challenges of cloud application design and related quality concerns
  • 3. Cloud design patterns
  • 4. Microservices in the cloud
  • 5. Serverless applications
  • 6. Compute services
  • 7. Storage services
  • 8. Integration/communication services
  • 9. Monitoring, benchmarking, and troubleshooting cloud applications
  • 10. Building cloud CI/CD pipeline
  • 11. Security and Identity Management in the cloud
  • 12. Data Analytics and AI in the cloud
  • 13. IoT solutions in the cloud
Teaching methods
Lectures with slides (presentations by professionals in the field), term project, consultations about projects
Assessment methods
Students will be assigned a team project. The project's goal will be to design, implement, deploy, and evaluate a PaaS cloud application that meets its functional and non-functional requirements (performance and operation costs) using cloud provider and programming language of their own choice.
To pass the course, the students must successfully complete the project, peer-review another project, and present the project to other students at the final colloquium.
Language of instruction
Further Comments
The course is taught annually.
The course is taught: every week.
The course is also listed under the following terms Spring 2016, Spring 2017, Spring 2018, Spring 2019, Spring 2020, Spring 2021.
  • Enrolment Statistics (Spring 2022, recent)
  • Permalink: