FI:PA200 Cloud Computing - Course Information
PA200 Cloud ComputingFaculty of Informatics
- Extent and Intensity
- 2/0/0. 2 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
- 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.