DevOps: Automating Software Delivery and Operations LTAT.06.015
Timetable
Lecure:
- Wednesday 10.15 - Narva mnt 18 - 1019
(log into courses to see the Zoom link)
Lab times:
- Group 1 - Narva mnt 18 - 2048
- Wednesday 14.15: Anders Martoja, Karl Villers
- Group 2 - Narva mnt 18 - 1022
- Wednesday 16.15: Anders Martoja, Karl Villers
- Group 5 - Narva mnt 18 - 2005
- Thursday 14.15: Ingvar Drikkit, Pille Pärnalaas
- Group 4 - Narva mnt 18 - 2005
- Friday 10.15: Ingvar Drikkit, Sander Kuusemets
- Group 3 (Virtual Zoom lab)
- Friday 10.15: Anders Martoja, Pille Pärnalaas
Objectives
The primary objective of this course is to provide the basic understanding of core principles, practices and tools of DevOps. Students will be able to learn how the software delivery process is fastened by adopting DevOps approach.
Learning outcomes
By completing this course students will be equipped with:
- In-depth understanding and necessity of DevOps.
- Skills to bring automation in different software delivery phases.
- Software stack that is needed to implement CI/CD.
- Skills to automate the testing, building, and integrating the software packages/modules.
- Knowledge on monitoring and scaling of the deployed software.
Brief description of content
This course mainly focuses on upgrading the conventional software development skills of our students with hands-on experiences on DevOps practices and culture. This course covers DevOps automation practices and tool categories including GitHub/GitLab, Jenkin, Ansible, OpenStack, Docker, OpenAPI, Prometheus, and many more.
Target group
Master's and 3rd year Bachelor students. Students should have a good knowledge on Python/Java/Go or other suitable languages language and familiar with Linux environment.
Other information
Lectures will be held in class, via Zoom and also recorded.
Assessment
List of independent assignments and instructions for their completion. The course has lectures, practical tasks and an exam.
In the practical tasks, students form a team (3 people), and work their way through 4 chapters of tasks (called phases), where students develop their own software and learn different DevOps methodologies and technologies by deploying and automating the activities related to this software.
In the end of each chapter there's a practical, where students need to show their work, and explain what has been done.
Assessment methods and criteria
- final written assessment
- The final examination will assess the level of knowledge from both theoretical and practical aspects.
- Assessment of practical knowledge will have high contribution compared to theoretical knowledge. The details will be posted on the course website.
- practical assignment
- Practical tasks in the course will be submitted to the course website (http://courses.cs.ut.ee) and explained in the lectures.
- Students need to complete the practical tasks by the end of the allocated time for the chapter, and then show the work done.
Active participation in the course and timely presentation of the practical tasks is required to secure a good grade.