PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

PORTALE DELLA DIDATTICA

Elenco notifiche



Cloud Programming and Operations

01VSAOV, 01VSAYG

A.A. 2025/26

Course Language

Inglese

Degree programme(s)

Master of science-level of the Bologna process in Ingegneria Informatica (Computer Engineering) - Torino

Course structure
Teaching Hours
Lezioni 39
Esercitazioni in aula 21
Lecturers
Teacher Status SSD h.Les h.Ex h.Lab h.Tut Years teaching
Malnati Giovanni Professore Associato IINF-05/A 39 6 0 0 1
Co-lectures
Espandi

Context
SSD CFU Activities Area context
ING-INF/05 6 D - A scelta dello studente A scelta dello studente
2025/26
This course naturally complements the contents presented in the Web Applications 2 course, focussing on the core concepts, tools, and best practices of DevOps and the implications they have in the design and implementation of a cloud based application. Students will acquire foundational knowledge and practical skills in cloud computing, emphasizing programming and operational practices for deploying and managing applications in the cloud. Students will learn to design and implement scalable cloud-native applications, leverage cloud services, and ensure reliability, security, and cost-efficiency. Topics include cloud programming models, serverless architectures, container orchestration, Infrastructure as Code (IaC), and cloud monitoring.
Designing and developing a software system is only part of the journey. A system, no matter how well designed or coded, produces no actual value until it is reliably deployed, operated, and maintained in the real world, where users interact with it and organisations depend on it. In today's world, value is obtained when software runs seamlessly in production, adapts to user needs, and evolves quickly in response to change. This is where DevOps practices and culture become essential — enabling computer engineers not only to build the system, but to ensure it reaches users effectively, operates reliably, and delivers sustained value. This course naturally complements the contents presented in the Web Applications 2 one, focussing on the core concepts, tools, and best practices of DevOps and the implications they have in the design and implementation of a cloud-oriented application. Topics include cloud programming models, serverless architectures, container orchestration, Infrastructure as Code (IaC), and cloud monitoring.
By the end of the course, students will be able to: - Understand core cloud computing concepts and architecture - Define what Day 0/1/2 operations are and explain how they affect the software lifecycle and the associated processes - Develop and deploy applications using cloud-native programming techniques and frameworks - Use serverless computing and microservices effectively - Implement Infrastructure as Code (IaC) for cloud environments - Monitor, secure, and optimize cloud operations
Students will acquire foundational knowledge and practical skills in cloud-oriented computing, emphasising programming and operational practices for deploying and managing applications in the cloud. Students will learn to design and implement scalable cloud-native applications, leverage cloud services, and ensure reliability, security, and cost-efficiency. By the end of the course, students will be able to: - Understand core cloud computing concepts and architecture - Define what Day 0/1/2 operations are and explain how they affect the software lifecycle and the associated processes - Develop and deploy applications using cloud-native programming techniques and frameworks - Use serverless computing and microservices effectively - Implement Infrastructure as Code (IaC) for cloud environments - Monitor, secure, and optimize cloud-oriented operations
Programming Skills - Solid knowledge of at least one modern programming language and web-programming framework - Ability to build and test applications using standard development environments and tools - Proficiency in using Git and collaborative development workflows (e.g., GitHub, GitLab) - Ability to use Linux shell/command line for basic tasks (file management, scripts, etc.) Software Engineering Fundamentals - Understanding of software development lifecycle (SDLC) - Familiarity with design patterns, modularity, and basic principles of distributed systems Containerisation (Introductory Level) - Basic familiarity with containers (Docker) - Understanding of why and how containerisation is used in modern deployments
Programming Skills - Solid knowledge of at least one modern programming language and one web-programming framework - Ability to build and test applications using standard development environments and tools - Proficiency in using Git and collaborative development workflows (e.g., GitHub, GitLab) - Ability to use Linux shell/command line for basic tasks (file management, scripts, etc.) Software Engineering Fundamentals - Understanding of software development lifecycle - Familiarity with design patterns, modularity, and basic principles of distributed systems Containerisation (Introductory Level) - Basic familiarity with containers (Docker) - Understanding of why and how containerisation is used in modern deployments
- DevOps Culture, Practices, and Toolchains (0.3 cfu) - Cloud-Based Architectures and Cloud-Native Design (0.3 cfu) - Kubernetes Architecture, Services, and Ecosystem (1 cfu) - Anatomy of a Kubernetes-Native System (0.5 cfu) - Platform Engineering, CI/CD, and Automation (0.5 cfu) - Software Systems Operations and Lifecycle Management (Day 0/1/2) (0.3 cfu) - Observability, Monitoring, and Optimisation (0.3 cfu) - Cloud Security and DevSecOps (0.4 cfu) - Resilience Engineering, HA, and Disaster Recovery (0.3 cfu)
- DevOps Culture, Practices, and Toolchains (0.3 cfu) - Cloud-Based Architectures and Cloud-Native Design (0.3 cfu) - Kubernetes Architecture, Services, and Ecosystem (1 cfu) - Anatomy of a Kubernetes-Native System (0.5 cfu) - Platform Engineering, CI/CD, and Automation (0.5 cfu) - Software Systems Operations and Lifecycle Management (Day 0/1/2) (0.3 cfu) - Observability, Monitoring, and Optimisation (0.3 cfu) - Cloud Security and DevSecOps (0.4 cfu) - Resilience Engineering, HA, and Disaster Recovery (0.3 cfu)
The course will alternate frontal lectures (39 hours) to hands-on lab (21 hours) in order to ensure deep, practice-oriented learning. Students will form teams of 4 people and will build a capstone project, practicing collaborative problem-solving and application of all skills in a realistic scenario
The course will alternate frontal lectures (39 hours) to hands-on lab (21 hours) in order to ensure deep, practice-oriented learning. Students will form teams of 4 people and will build a capstone project, practicing collaborative problem-solving and application of all skills in a realistic scenario
Books: - Ajay Chankramath, Nic Cheneweth, Bryan Oliver, Sean Alvarez; Effective Platform Engineering; Manning 2025 - Mauricio Salatino and Thomas Vitale; Developer Experience on Kubernetes; Manning Early Access Program 2025
Books: - Ajay Chankramath, Nic Cheneweth, Bryan Oliver, Sean Alvarez; Effective Platform Engineering; Manning 2025 - Mauricio Salatino and Thomas Vitale; Developer Experience on Kubernetes; Manning Early Access Program 2025
Slides; Esercitazioni di laboratorio; Video lezioni dell’anno corrente;
Lecture slides; Lab exercises; Video lectures (current year);
Modalità di esame: Prova orale obbligatoria; Elaborato progettuale in gruppo;
Exam: Compulsory oral exam; Group project;
... The assessment of the course will be based on the discussion and critical analysis of the capstone project, with a specific focus on the following criteria: - Project Completeness and Technical Quality - Individual Contribution and Involvement - Acquired Knowledge and Skills Each team member will be evaluated both on the collective project outcome and on their individual performance during the oral discussion. The evaluation will prioritize practical understanding, critical thinking, and problem-solving skills over rote memorization of theory.
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Compulsory oral exam; Group project;
The assessment of the course will be based on the discussion and critical analysis of the capstone project, with a specific focus on the following criteria: - Project Completeness and Technical Quality - Individual Contribution and Involvement - Acquired Knowledge and Skills Each team member will be evaluated both on the collective project outcome and on their individual performance during the oral discussion. The evaluation will prioritise practical understanding, critical thinking, and problem-solving skills over rote memorisation of theory.
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.
Esporta Word