Propozycje tematów
1. (zespołowe) Narzędzia automatyzujące procesy i wspierające pracę zespołow programistycznych: DevOps, CI/CD (continuous integration, continuous delivery, continuous deployment).
Azure DevOPs (Repos, Boards, Pipelines, itd. ), ewentualnie integracja z innymi usługami (np. GitHub)
-
-
Prezentacja dla zespołu 3-4 osobowego demonstrująca pełen pipeline wytwórczy na przykładowym projekcie deweloperskim (może być na przykładzie projektu realizowanego aktualnie w ramach Pracowni Programowania Zespołowego). Najważniejsze zagadnienia:
wsparcie dla pracy zespołowej, zarządzanie zespołem i zadaniami, issue tracker, wybrana metodologia wytwórcza (agile, scrum, …)
repozytorium kodu (system kontroli wersji) i workflow w zespole, np.:
automatyzacja procesów wytwórczych: budowanie, testy, deployment
2 . Automatyzacja procesów budowania i testowania
-
-
-
-
pre-commit - zarządzanie skryptami uruchamianymi przed zatwierdzeniem zmian git do automatycznego formatowania kodu, sprawdzania jakości kodu, zależności i testowania
-
3. Narzędzia do statycznej analizy kodu (lintery), refaktoryzacji, generowania kodu
4. Techniki izolacji, atrapy (mocki), wzorce w testowaniu jednostkowym:
5. generowanie testów i danych do testów
6. Profilowanie aplikacji
narzędzia diagnostyczne w Visual Studio, instrumentacja, profilowanie statystyczne (sampling), debugowanie pamięci
-
Orbit instrumentacja programów w C, C++, Rust, Go
-
valgrind system for debugging and profiling Linux programs
7. Docker - uruchamianie aplikacji w izolowanych środowiskach
8. Kubernetes - zarządzanie dużą liczbą kontenerów
9. wykorzystanie narzędzi AI w procesie wytwórczym
10 . Inne narzędzia spotykane w firmach informatycznych a nieobecne w programie nauczania IS.
… jakich narzędzi używacie?
Inne propozycje automatyzacji DevOps, CI, CD - mozliwych kompiacji jest wiele;
-
-
-
GoCD free & open source ci/cd server
Northflank a comprehensive suite of features to support you from inception to production. Put your DevOps lifecycle on autopilot.
GitHub/BitBucket +
build
CircleCI (up to 6,000 build minutes and 5 active users per month)
-
web deployment
Render a unified cloud to build and run all your apps and websites
Cyclic build and run modern cloud-native serverless applications without piling on to the full stack.
-
Koyeb push code to production, everywhere, in minutes
GitHub +
TeamCity powerful continuous integration for DevOps-centric teams
-