Integracja ciągła vs dostarczanie ciągłe vs wdrażanie ciągłe w Scrum

Powszechnie używane terminy — „Integracja ciągła”, „Dostarczanie ciągłe” i „Wdrażanie ciągłe” — uznawane są za elementy Rozwój oprogramowania Agile. Te praktyki dzielą prefiks „ciągły”, wskazując na i umożliwiając stopniowe wdrażanie (oferowane oprogramowanie) i jednoczesne wdrażanie wyników, bez opóźnień typowych dla tradycyjnej sekwencyjnej rozwoju. W nowoczesnym środowisku Agile te terminy reprezentują dostarczanie ukończonych iteracji przez potok, umożliwiając automatyczne wdrażanie jako aktualizacje.
Podstawową zasadą dostarczania ciągłego jest stopniowe dostarczanie działającego oprogramowania w krótkich iteracjach. Innymi słowy, dostarczanie ciągłe to implementacja o krótkim cyklu, w której kod jest często tworzony, budowany, zapisywany, automatycznie testowany i wdrażany.
Continuous Delivery
Dostarczanie ciągłe
Uwaga:
Nie wymaga krótkich cykli wydania — wystarczy możliwość umożliwienia nowych zapisów kodu, gdy tylko będą gotowe. W ten sposób programiści mogą aktualizować produkt wielokrotnie dziennie, ciągle dostarczając wartość użytkownikom. To osiągane poprzez wysokie poziomy testowania i automatyzacji wdrażania.

Dostarczanie ciągłe w Scrum

W Scrum, cykly o ustalonej długości Sprinty o długości 1–4 tygodni są promowane, kończąc się testowaniem, demonstracją, Recenzja Sprintu, ostatecznym zatwierdzeniu i wydaniu. Teraz chcemy wydawać jeszcze częściej — dostarczanie ciągłe.
Integracja ciągła odnosi się do praktyki rozwoju oprogramowania wymagającej od programistów integrowania kodu do centralnego repozytorium kilka razy dziennie. Oprócz jednoczesnych i automatycznych aktualizacji, problemy można łatwo wykryć poprzez weryfikację różnych czasów zapisu kodu.
Dostarczanie ciągłe umożliwia bezpieczne i szybkie dostarczanie wszystkich rodzajów zmian (w tym nowych funkcji, zmian konfiguracji, poprawek błędów i eksperymentów) do środowiska produkcyjnego lub użytkowników końcowych w zrównoważony sposób.
Wdrażanie ciągłe dalej rozwija podejście integracji ciągłej poprzez minimalizację odstępu czasowego między kodowaniem a wdrażaniem.
Continuous Delivery in Scrum
Dostarczanie ciągłe w Scrum

Zalety dostarczania ciągłego

Ludzie często zakładają, że wydawanie oprogramowania częściej oznacza akceptację niższego poziomu stabilności i niezawodności w systemie. Jednak wiele badań pokazuje, że nie jest to prawda. W rzeczywistości wysyłanie jednej funkcji naraz znacznie zmniejsza ryzyko każdego wdrożenia. Twój zespół może szybciej dostarczać funkcje klientom, umożliwiając szybszą odpowiedź. Potok dostarczania ciągłego przynosi wiele korzyści zespołom, firmom i użytkownikom:
  • Zmniejszony czas wydania na rynek
  • Zmniejszone koszty
  • Szybsza odpowiedź
  • Szczęśliwsi klienci
  • Wydania o niższym ryzyku
Według badania z 2014 rokuRaport badania Xebia Labs, ciągła dostawa wiodła drogę, a Agile szybko za nią. 36,4% respondentów wskazało DevOps jako kluczową inicjatywę w 2014 roku, jak pokazano na poniższym wykresie:
Software Project Initiative Application (2014)
Zgłoszenie inicjatywy projektu oprogramowania (2014)

Podsumowanie

Jeśli brzmi to zbyt dobrze, by było prawdą, pamiętaj: ciągła dostawa to nie magia. Wypuszczanie oprogramowania wymaga dużej dyscypliny. Ciągła dostawa w Scrum osiąga ciągłe, codzienne ulepszanie poprzez częstsze wypuszczanie mniejszych zmian, pomagając wszystkim przyzwyczaić się do regularnego, przewidywalnego tempa i pozostawiając miejsce na reakcję na zmiany. Najważniejsze, że udane wypuszczenia stają się wspólnymi sukcesami – czym każdy może świętować razem.

Leave a Reply