Image Image Image Image Image Image Image Image Image Image

it-manager | 21/11/2018

Scroll to top

Top

3 komentarze

Devops - co to takiego?

Devops – co to takiego?

Rozmowa z Arkadiuszem Gałeckim, Ekspertem ITSM w CTPartners z GK Infovide-Matrix

 

W jaki sposób można zdefiniować Devops?

Devops (współpraca rozwoju i operacji) jest metodą tworzenia oprogramowania, która podkreśla, komunikację, współpracę i integrację pomiędzy deweloperami i specjalistami od eksploatacji. Devops jest odpowiedzią na współzależność rozwoju i operacji. Pomaga organizacji szybko wytwarzać oprogramowanie, produkty i usługi. Devops IT to model współpracy pomiędzy obszarami odpowiedzialnymi za projektowanie, przekazanie i eksploatację usług.

Kto szczególnie potrzebuje Devops i dlaczego?

Metoda Devops, dedykowana jest w szczególności dla organizacji z sektora bankowego telekomunikacji, mediów, portali internetowych czy firm działających w obszarze e-commerce. Jest to rozwiązanie, idealnie sprawdzające się w przypadku organizacji, które wytwarzają bądź wdrażają wiele zmian w środowiskach produkcyjnych, i chciałyby to robić w jak najkrótszym czasie i z zachowaniem wysokiej jakości.

Na czym polega integracja wdrożenia rozumiana przez pryzmat Devops?

Należy się tutaj odnieść do znanych w środowiskach deweloperskich czy też rozwojowych procesów Continuous Integration, Continuous Delivery,  Continuous Testing, Continuous Monitoring
i Continuous Deployment, które to jasno definiują jak te procesy są realizowane. Z punktu widzenia Devops integracja wdrożenia przedstawiana jest niejednokrotnie, jako dyscyplina budowy i weryfikacji projektu (w naszym rozumieniu wytwarzanego oprogramowania), za pośrednictwem automatycznych testów regresji, a czasem aktualizowania i analizy kodu, gdy kod jest sprawdzany w systemie kontroli wersji. Takie podejście jest jedną z bardziej zwinnych praktyk rozwoju (przynajmniej z punktu widzenia programisty), która jest zazwyczaj związana z Devops. Powyższe działanie umożliwia programistom opracowanie rozwiązania wysokiej jakości, bezpiecznie w regularnych małych krokach, zapewniając natychmiastową informację zwrotną na temat wad napisanego kodu. 

Jak Devops definiuje zarządzanie zmianą?

Devops sam w sobie nie definiuje procesu zarządzania zmianą.  Aby jednak przyjąć Devops
w organizacji niezbędne jest wykorzystanie dobrych praktyk związanych z tym procesem i o ile to możliwe w przypadku konkretnej organizacji starać się maksymalnie uszczuplać ten proces. Zarządzanie zmianą, jest bowiem bardzo często wąskim gardłem w organizacjach, które masowo wdrażają zmiany a czas działa na ich niekorzyść. Metoda Devops definiuje formułę współpracy pomiędzy stronami, wdraża konsultacje proaktywne nie reaktywne pozwalając na akceptacje zmian
w konsultacjach F2F z właścicielem zmiany. Tak prowadzony proces może nawet o około 60 proc. zmniejszyć ilość odrzucanych zmian.

Ile jest Agile w Devops?

Na Agile w kontekście Devopsa należy patrzeć, jako jedno z narzędzi, które pozwala nam działać
w zgodzie z metodą. Fundamentalna zasada Devops mówi, że programiści, operacje i wsparcie, muszą ściśle współpracować. Wynika z tego, że muszą mieć jedną wizję i aktywnie dążyć do współpracy ze sobą. Powszechną praktyką w społeczności Agile jest stwierdzenie „Klient na miejscu” przyjęła się z Extreme Programming (XP), który motywuje agile deweloperów do ścisłej współpracy z biznesem. Zdyscyplinowani agiliści są o krok dalej z praktyką aktywnego uczestnictwa, która mówi, że deweloperzy powinni ściśle współpracować ze wszystkimi zainteresowanymi stronami, w tym z operacjami i wsparciem, nie tylko  z biznesem. Jest to działanie dwukierunkowe: Zespoły odpowiedzialne za operacje i wsparcie muszą być także gotowe i ściśle współpracować z deweloperami. Programiści Agile są uważani za “zainfekowanych jakością”, ponieważ ich nacisk na pisanie kodu o wysokiej jakości oraz sprawdzenie go jest bardzo wysokie. Czynności te wykonują szybko i często jak tylko to możliwe. W rezultacie, zautomatyzowane testowanie regresji jest powszechną praktyką przyjętą przez sprawne zespoły, które jest wykonywane w obszarach testowych pierwszego podejścia, takich jak  test-driven (TDD) i opartych na zachowaniach rozwoju (BDD). Zespoły agile  powszechnie starają się uruchomić zautomatyzowane zestawy testów wiele razy dziennie, dzięki temu są w stanie znaleźć wiele występujących problemów, a tym samym mają zapewniony wyższy poziom jakości niż inne zespoły. To dobra wiadomość dla eksploatacji, dla której najważniejsze są rozwiązania odpowiedniej jakości przed zatwierdzeniem i wysłaniem go na produkcję.

Jakie są bezpośrednie korzyści z wykorzystania Devops?

Devops stanowi doskonały przewodnik, wskazujący, jak zbudować odpowiednie środowisko zarządzania projektem wdrożenia nowej usługi lub zmian w usłudze oraz jak następnie z niego korzystać. Metodyka skraca  Time to Market co pozwala zyskać czas, przyspieszając proces wdrożeń. Wszystko to przekłada się na zmniejszenie kosztów i czasu dostarczenia produktu, krótszy czas i koszt testowania przy jednoczesnym zwiększeniu jego zasięgu, jak i możliwości wykorzystania środowiska. Devops pozwala na minimalizowanie przestojów, problemów w czasie wdrażania oraz roll-back aplikacji. Zwiększenie zdolności do reprodukcji i naprawy błędów oraz minimalizuje średni czas przywrócenia (MTTR).

Gdzie można dowiedzieć się czegoś więcej na temat Devops?

Nieocenionym źródłem wiedzy w tym obszarze jest Internet, różnego rodzaju blogi etc. Można zapoznać się z wieloma publikacjami na ten temat między innymi ”Project Phoenix, Devops CookBook, Devops for Dummies. Warto oczywiście również wybrać się na różnego rodzaju konferencje organizowane na całym świecie w temacie Devops. Jako CTPartners  oferujemy również szkolenia z zakresu teorii i praktyki zastosowania Devops, które pozwalają uczestnikom zapoznać się ze stosowaną metodyką. 

Przeczytaj także:

Jak analiza wielkich zbiorów danych kształtuje rynek i buduje nową wartość

Tagi

Comments

  1. Czym jest sektor bankowy telekomunikacji?

    • Sektorem bankowym, telekomunikacją 🙂

Wypowiedz się

Wszelkie prawa zastrzeżone