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.

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.

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:

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.