This page contains information on the schedule, material, exam, etc. for the elective "DevOps, Software Evolution and Software Maintenance Content" at IT University of Copenhagen, spring 2023 (BSc course description on LearnIT and MSc course description on LearnIT).
Sessions (lectures combined with exercises) are on Tuesdays from 14:00 to 18:00 first in room 2A12/2A14.
OBS: We expect you to be present during the entire time, not only the first two hours.
# | Date | Time | Lecturer | Preparation | Topic | Exercises | Project Work |
---|---|---|---|---|---|---|---|
1 |
31/1 |
14:00 - 18:00 |
Helge |
||||
2 |
7/2 |
14:00 - 18:00 |
Helge |
Refactor ITU-MiniTwit in another programming language and tech. stack |
|||
3 |
14/2 |
14:00 - 18:00 |
Helge |
Continue refactoring, deployment of your ITU-MiniTwit to a remote server. |
|||
4 |
21/2 |
14:00 - 18:00 |
Helge & Zander (Eficode) |
Using GitHub Actions CI (Simulator test) |
Continue refactoring, Setup CI & CD for reproducible builds, tests, delivery, and deployment |
||
5 |
28/2 |
14:00 - 18:00 |
Helge |
What is DevOps and configuration management |
Cleaning and polishing of your ITU-MiniTwit, introduction of DB abstraction layer, and entering maintenance (Simulator starts) |
||
6 |
7/3 |
14:00 - 18:00 |
Helge |
Prep. material |
Monitoring |
Using Prometheus and Grafana |
Add monitoring to your ITU-MiniTwit |
7 |
14/3 |
14:00 - 18:00 |
Helge |
Prep. material |
Software Quality, Maintainability & Technical Debt |
Understand SonarQube Quality Model and experiment with linters. |
Enhancing CI/CD setup with test suite and static code analysis |
8 |
21/3 |
14:00 - 18:00 |
Mircea |
Prep. material |
Logging, and Log Analysis. Service-level agreements.) |
A Basic EFK Stack |
Add logging to your ITU-MiniTwit and create a set of SLAs for it |
9 |
28/3 |
14:00 - 18:00 |
Mircea |
Prep. material |
Security of web-facing applications |
A Basic Pen-Test with Metasploit |
Security Assessment & Pen Testing |
– |
4/4 |
- |
- |
- |
Easter Break |
- |
Operations & maintenance still reacting on issue reports and fixing of errors :) |
10 |
11/4 |
14:00 - 18:00 |
Mircea |
Prep. material |
Deployment strategies, scalability, load balancing. |
A Basic Swarm |
Isolate components into services/containers/VMs |
11 |
18/4 |
14:00 - 18:00 |
Mircea |
Workshop |
Continue isolation of components into services/containers/VMs and Fix reported problems |
||
12 |
25/4 |
14:00 - 18:00 |
Mircea |
Infrastructure as Code |
MiniTwit Infrastructure as Code |
Encode your infrastructure setup |
|
13 |
2/5 |
14:00 - 18:00 |
Mircea & Helge |
Documentation of Systems and Projects |
Simulator stops. Write report. |
||
14 |
9/5 |
14:00 - 18:00 |
Mircea & Helge |
Exam prep., Thesis topics, Evaluation, Cookies :) |
Write report. |
-
Exam submission: Latest Wednesday 24/5/2023 14:00
-
Exam dates: 12/6/2023 to 14/6/2023
This is not a distance course. This term, we will not record the lectures. You will have access to all written lecture material through this repository though.
All examples in class target Pop!_OS 22.04. Essentially, this is a Ubuntu 22.04 (Jammy Jellyfish) Linux distribution. There are many more such Ubuntu derivates, choose one of your liking: Linux Mint, Elementary OS, KDE Neon, etc.
Since all sessions contain hands-on exercises, we recommend that you have such a Linux version installed on a computer. (In case you decide to run another operating system, we cannot provide too much support for these during class.) The recommended setup is to have such a Linux installed natively on your machine.
Find installation instructions session_00/README.adoc.
Note, we do not have any experiences with M1/M2-based Macs. Neither do we have access to one of these. Consequently, likely many of the technologies that we demonstrate will have issues on these computers and we won’t be able to support you much.
Outside teaching sessions you can communicate with each other, and with the teachers via the the course’s Teams channel.
Index | Name | Members | Technology | |
---|---|---|---|---|
BSc |
Group e |
Souffle |
|
|
BSc |
Group f |
Container Maintainers |
|
Go (Gin) |
BSc |
Group g |
DevJanitors |
|
C# |
BSc |
Group h |
FiveGuys |
|
Python? |
BSc |
*Group j |
Niceness |
|
C# (Blazor) |
BSc |
Group k |
Radiator |
|
C# (Razor) |
BSc |
Group m |
Jason Derulo |
|
C# (Razor) |
MSc |
Group a |
Academic Weapons |
|
Java |
MSc |
Group b |
DevUps: Delivering Buggy Software Late since 2023 |
|
C# (React) |
MSc |
*Group c |
DreamTeam |
|
C# |
MSc |
Group d |
CI/CDont |
|
Go (Gin) (NextJS) |
MSc |
Group i |
OpsDev |
|
Python (FastAPI) |
MSc |
Group l |
Bango |
|
Go (Gin, GORM) |
MSc |
Group n |
dudes |
|
Go (Gin) |
MSc |
*Group o |
group o |
|
C# |
MSc |
Group s |
Group S |
|
|
MSc |
Group t |
our group name |
|
Python (Django) |
TBA
Organization icon made by Freepik from www.flaticon.com