Azure DevOps to platforma Microsoft dla zespołów tworzących oprogramowanie, łącząca zarządzanie backlogiem, repozytoria Git, pipeline CI/CD, testy automatyczne i artefakty w jednym zintegrowanym środowisku. Firmy używają Azure DevOps do planowania sprintów Scrum, śledzenia bugów, automatycznego budowania i wdrażania aplikacji na środowiska testowe i produkcyjne. Azure DevOps jest oferowany w modelu SaaS (dev.azure.com) lub on-premises (Azure DevOps Server) i obsługuje projekty dowolnej wielkości – od jednoosobowych startupów po korporacje z setkami deweloperów.
Azure Boards – zarządzanie backlogiem i sprintami
Azure Boards implementuje zarządzanie projektem w metodologiach Scrum i Kanban – product backlog z priorytetyzacją, planowanie sprintów, tablica zadań i wykresy burndown. Work items obejmują epiki, funkcje, historyjki użytkownika, zadania i błędy powiązane w hierarchii, co daje pełny przegląd zakresu projektu od strategicznego poziomu do konkretnych zadań programistycznych. Integracja z repozytoriami Azure Repos i GitHub pozwala powiązać commit lub pull request z konkretnym work itemem, zachowując pełny ślad od wymagania do wdrożonego kodu.
Azure Repos – repozytoria Git i TFVC
Azure Repos dostarcza repozytoria Git lub TFVC (Team Foundation Version Control) hostowane w chmurze z nieograniczoną pojemnością w prywatnych repozytoriach. Code Review przez Pull Requests jest kluczowym elementem procesu jakości – recenzenci komentują kod bezpośrednio w interfejsie webowym, a zmiany muszą uzyskać wymagane zatwierdzenia przed scaleniem do głównej gałęzi. Branch Policies wymuszają uruchomienie pipelinów CI i pozytywny wynik automatycznych testów przed dopuszczeniem zmian do gałęzi main/master, co chroni stabilność kodu produkcyjnego.
Azure Pipelines – automatyzacja CI/CD
Azure Pipelines automatyzują budowanie, testowanie i wdrażanie aplikacji przy każdym pushu kodu do repozytorium. Pipeline YAML definiuje etapy budowania (kompilacja, testy jednostkowe, analiza statyczna), a następnie wdrożenia na kolejne środowiska – dev, staging, produkcja – z opcjonalnymi bramkami zatwierdzenia przez człowieka. Obsługuje wszystkie popularne języki i frameworki (.NET, Java, Python, Node.js, Go), platformy docelowe (Azure, Kubernetes, AWS, on-premises) i systemy konteneryzacji Docker. Automatyczne wdrożenia zastępują ręczne deployenty wykonywane przez administratorów, redukując liczbę błędów i czas dostarczenia funkcjonalności do użytkowników.
Azure Test Plans – zarządzanie testami
Azure Test Plans zarządzają planami testów manualnych i automatycznych – testerzy wykonują przypadki testowe z poziomu przeglądarki, rejestrują wyniki i automatycznie tworzą bugi z pełnym kontekstem (zrzut ekranu, logi, kroki reprodukcji). Integracja z Azure Pipelines pozwala uruchamiać testy automatyczne (Selenium, Playwright, NUnit) w pipeline CI i raportować wyniki do Azure Test Plans. Śledzenie wskaźnika pokrycia testami i trendów regresji pomaga utrzymywać wysoką jakość kodu przy rosnącym tempie rozwoju aplikacji.
Azure Artifacts – zarządzanie pakietami
Azure Artifacts hostuje prywatne repozytoria pakietów NuGet, npm, Maven, Python i Universal Packages dla projektów firmowych. Biblioteki wewnętrzne i zależności, które nie powinny być publicznie dostępne w npmjs.com lub NuGet.org, są publikowane w prywatnym rejestrze Azure Artifacts dostępnym dla projektów w danej organizacji Azure DevOps. Upstream Sources pozwalają proxować pakiety z publicznych rejestrów przez Artifacts, co umożliwia skanowanie bezpieczeństwa i cachowanie przy jednoczesnym zachowaniu dostępu do otwartego ekosystemu pakietów.