Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 11 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,34 +20,35 @@ The schedule is at <https://www.kth.se/social/course/DD2482/calendar/>
* Preparatory reading: [DevOps principles](https://www.atlassian.com/devops/what-is-devops) and [demo](https://youtu.be/qcm0rG8EKXI)
* Course introduction by Larissa Schmid (Teaching philosophy, [flipped classroom](https://en.wikipedia.org/wiki/Flipped_classroom), Expectations, Team, Agenda, Grading, Communication, Infrastructure, Master's theses and Research)
* Goals: watch the repo, register one first task as a pull request on this repo.
* Seminar on 28/8, 03/09: Open schedule - discuss your goals for the course, your planned tasks, and any other questions you may have.

### Week 2 (2/9 13h-15h): [Testing automation](https://github.com/KTH/devops-course/issues/9), [Continuous Integration](https://github.com/KTH/devops-course/issues/3), [Feature flags](https://github.com/KTH/devops-course/issues/21)
* Preparatory material [Testing at scale](https://increment.com/testing/testing-at-scale/), [Harvesting Production GraphQL Queries to Detect Schema Faults](https://arxiv.org/pdf/2112.08267), [The Rituals of Iterations and Tests](https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9238653)
* Seminar: scientific paper, demonstrations
* Seminar on 10/09: scientific paper, demonstrations

### Week 3 (9/9 13h-15h): [Continuous Deployment / Delivery](https://github.com/KTH/devops-course/issues/12)
* Preparatory material [An Introduction to Continuous Integration, Delivery, and Deployment](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment), [The Top 10 Adages in Continuous Deployment](https://zlmonroe.com/CSE566/Readings/5.The_Top_10_Adages_In_Continuous_Deployment.pdf)
* Seminar: scientific paper, demonstrations
* Seminar on 18/09: scientific paper, demonstrations

### Week 4 (16/9 10h-12h): [MLOps/AIOps/LLMOps](https://github.com/KTH/devops-course/issues/1016)
* Preparatory material: [Short intro to MLOps](https://www.databricks.com/glossary/mlops), [Building Machine Learning Models Like Open Source Software](https://cacm.acm.org/magazines/2023/2/268952-building-machine-learning-models-like-open-source-software/fulltext)
* Seminar: scientific paper, demonstrations
* Seminar on 25/09: scientific paper, demonstrations


### Week 5 (23/9 13h-15h): [Infrastructure as Code](https://github.com/KTH/devops-course/issues/2)
* Preparatory material: [Best practices for container compliance](https://increment.com/containers/container-compliance/), [Building on-demand staging environments](https://increment.com/containers/on-demand-staging-environments-kubernetes/), [Gang of eight: a defect taxonomy for infrastructure as code scripts](http://www.chrisparnin.me/pdf/GangOfEight.pdf)
* Seminar: scientific paper, demonstrations
* Seminar on 30/09: scientific paper, demonstrations


### Week 6 (29/9 13h-15h): [Dependency Management](https://github.com/KTH/devops-course/issues/24) & [DevSecOps](https://github.com/KTH/devops-course/issues/18)
* Preparatory material: [A 'Worst Nightmare' Cyberattack: The Untold Story Of The SolarWinds Hack](https://www.npr.org/2021/04/16/985439655/a-worst-nightmare-cyberattack-the-untold-story-of-the-solarwinds-hack), [The supply chain of software](https://increment.com/apis/apis-supply-chain-software/), [Successes, challenges, and wombat behind npm](https://increment.com/development/interview-with-isaac-z-schlueter-ceo-of-npm/), [A comprehensive study of bloated dependencies in the Maven ecosystem ](https://arxiv.org/pdf/2001.07808)
* Seminar: scientific paper, demonstrations
* Seminar on 08/09: scientific paper, demonstrations


### Week 7 (7/10 13h-15h): Other topics
* incl. [Monitoring and Observability](https://github.com/KTH/devops-course/issues/8), [cultural aspects](https://github.com/KTH/devops-course/issues/7) and [legal aspects](https://github.com/KTH/devops-course/issues/1557), [Software bots](https://github.com/KTH/devops-course/issues/310), , [Misc DevOps topics](https://github.com/KTH/devops-course/issues/13)
* Preparatory material [Chaos Engineering](https://ieeexplore.ieee.org/iel7/52/5204063/07436642.pdf) [A Chaos Engineering System for Live Analysis and Falsification of Exception-handling in the JVM](http://arxiv.org/pdf/1805.05246)
* Seminar: scientific paper, demonstrations
* Seminar on 12/09: scientific paper, demonstrations


## Rules
Expand All @@ -69,9 +70,9 @@ To pass the course, the student has to complete and pass between 3 and 5 tasks:
* Final grading scheme
* E: 3 completed tasks (excluding feedback)
* C: 3 completed tasks + feedback
* B: 4 completed tasks
* B: 5 completed tasks
* A: 5 completed tasks + active participation in all but one seminars
* Active participation: attendance to all but one lectures, a traceable record of questions asked during lectures (through GitHub issues) and the answers you received to them.
* Active participation: attendance to all but one seminars, a traceable record of questions asked during seminars (through GitHub issues) and the answers you received to them.
* Group work is mandatory (max 2 persons) but you cannot be with the same person for more than 2 individual tasks. You are not allowed to work alone. When you send a pull request for registration, please follow the name convention of using email addresses of two members to create the folder: email-email.
* A failed task requires to pass it again at the end of the course (repeat), based on the feedback from the failure. A task can only be repeated once.
* If the whole course is failed, no grades are kept if the student registers again to the course the year after.
Expand All @@ -89,9 +90,9 @@ To pass the course, the student has to complete and pass between 3 and 5 tasks:

**Seminar sessions**

* Seminar slots are used to present and discuss the "demo" and "scientific paper" tasks. They are given in person.
* Seminar slots are used to present and discuss the "demo" and "scientific paper" tasks. They are given in person and correspond to the weekly topics as outlined in the schedule.
* Seminar slots are not mandatory, but you have to be present to present the tasks you proposed.
* Active participation (and therefore attendance) in all but one seminars is required if you are aiming for an A.
* Active participation (and therefore attendance) in all but one seminars covering the topics of weeks 2 to 7 is required if you are aiming for an A.

**Examinations**: Some tasks require physical presence (demo, scientific paper), others do not (project, open-source, feedback).

Expand Down
Loading