Devops, czyli współpraca ponad podziałami

Robert Gontkiewicz, prezes Optimatis Sp. z o.o.

Rozwiązania informatyczne są dziś fundamentem biznesu, ale bez współpracy działów operacyjnych z deweloperami szybkie tworzenie i udostępnianie oprogramowania jest coraz trudniejsze. Z pomocą Devops można przyspieszyć powstawanie innowacyjnych produktów.

Termin Devops jest stosunkowo młody, bo został spopularyzowany dopiero w 2009 roku podczas serii konferencji Devops Days. Jest to metodyka zespolenia rozwoju (ang. development) i operacji (ang. operations) oraz zapewnienia jakości (ang. quality assurance). W tradycyjnej organizacji departamenty rozwoju, utrzymania (operacji) IT i zapewnienia jakości są rozdzielone. Brak integracji ze wsparciem IT i zapewnieniem jakości obniża skuteczność procesów wytwarzania i wdrażania oprogramowania. Devops zmieni ten obraz, ponieważ stawia na wspólną pracę developerów i administratorów nad tworzeniem i utrzymaniem produktu. Kluczowy w tym podejściu jest właśnie produkt, którego rozwój jest planowany w sposób iteracyjny.

Devops jest też często opisywany jako nastawiona na współpracę, bardziej produktywna relacja między zespołami rozwoju i operacji, która zwiększa skuteczność i obniża ryzyko produkcyjne kojarzone z częstymi zmianami. W praktyce Devops także bywa łączone z różnymi narzędziami. W szczególności z automatyzacją i narzędziami do monitorowania.

Kiedy Devops odnosi sukces

Devops narodził się w wielkich firmach, jak Google czy Netflix, które nie mogły pozwolić sobie na nieskoordynowane funkcjonowanie działów developerskich i operacyjnych. Koncepcja ta jest faktycznie najbardziej odpowiednia dla przedsiębiorstw, w których częstotliwość kolejnych wydań oprogramowania jest relatywnie duża, gdzie codziennie powstaje masa nowego kodu, jak ma to miejsce w korporacjach. Jednak należy pamiętać, że dziś, w erze cyfrowej transformacji coraz więcej firm potrzebuje do działania różnych narzędzi IT. Dlatego ta metoda współpracy przyda się i w mniejszej firmie, jeśli buduje ona i rozwija własne aplikacje.

Jest to metodologia dla każdego, kto chce być bardziej zwinny i pragnie uzyskać szybsze wydawanie oprogramowania i wyższą jakość usług – niezależnie od tego, czy świadczy usługi na rzecz klientów czy pracowników wewnętrznych. Devops nie dotyczy też konkretnego sektora gospodarki, stosują go nie tylko firmy technologiczne, ale także firmy z innych branż takich jak: finansowa, farmaceutyczna, rozrywkowa, telekomunikacyjna, ubezpieczeniowa, handel, opieka zdrowotna, produkcja, a także administracja publiczna.

„Stay of Devops Report 2017” opublikowany przez firmę Puppet stwierdza, że firmy o rozwiniętej kulturze Devops, określone na rzecz raportu jako „high performers”, w odróżnieniu od tych, które dopiero zaczynają przygodę z Devops („low performers”) są znacznie skuteczniejsze w produkcji oprogramowania:

  • 46 razy częściej tworzą kod;
  • 440 razy szybciej dokonują zmian;
  • 96 razy krótszy jest w nich czas przestojów (MTTR – mean time to recover – średni czas od momentu wystąpienia awarii do naprawy uszkodzenia);
  • 5 razy niższa jest change failure rate (częstotliwość, z jaką zmodyfikowany system lub komponent uległy awarii, wyrażone w awariach na jednostkę czasu).

Według raportu Puppet „high performers” w porównaniu do „low performers” zdecydowanie mniej pracy wykonują manualnie, ponieważ znacznie więcej działań automatyzują:

  • o 33% więcej zautomatyzowali zarządzanie konfiguracją;
  • o 27% więcej zautomatyzowali testy;
  • o 30% więcej zautomatyzowali wdrożenia;
  • 27% więcej zautomatyzowali procesy zatwierdzania zmian.

Automatyzacja jest ogromnym dobrodziejstwem dla organizacji, ponieważ im większa liczba prac zostaje zautomatyzowana, tym szybciej pracownicy czy klienci mogą korzystać z technicznych innowacji. Dobrym przykładem może być transformacja w dziale HP LaserJet. Inwestując w automatykę, a zwłaszcza w zautomatyzowane testy, firma HP LaserJet mogła zwiększyć o 700% wydatki na rozwój nowych funkcji oprogramowania.

Korzyści z Devops i korzyści z ITIL®

Devops z powodu tego, że jest pojęciem nowym, nie jest jasno postrzegany przez większość ekspertów IT. Pewne jest, że pomaga ulepszyć zarządzanie usługami informatycznymi (ITSM), ale to samo robi od dziesięcioleci ITIL®. W jaki sposób zatem Devops różni się od ITIL® i dlaczego warto go przyjąć? Czy może zastąpić ITIL®/ITSM? Czy też metodyki mogą i powinny współpracować ze sobą?

Przyjęcie praktyk Devops w przedsiębiorstwie nie oznacza odrzucenia procesów ITIL®. Wręcz przeciwnie. Devops powinien być postrzegany jako narzędzie usprawniające procesy ITIL®. Warto zatem przyjrzeć się jak funkcjonują obie metodyki, by zobaczyć co może wyniknąć z ich połączenia.

ITIL® jest najpowszechniej przyjętym podejściem (standardowymi ramami) do zarządzania usługami IT. Najlepsze praktyki informatyczne ujęte w sformalizowane ramy mają na celu dostosowanie usług IT do celów biznesowych. Głównym celem ITIL® jest świadczenie usług w sposób, który koncentruje się na kliencie i optymalizuje koszty. Najnowsza wersja ITIL® 2011 opisuje aż 26 procesów obejmujących etapy strategii usług, projektowania usług, wdrożenia usługi, obsługi serwisowej i ciągłego doskonalenia. Korzyści z ITIL® obejmują:

  • ścisłą współpracę między informatyką a biznesem i lepsze dostosowanie celów;
  • większą przejrzystość i efektywność, co prowadzi do obniżenia kosztów IT;
  • wzrost zadowolenia klientów dzięki lepszemu świadczeniu usług i lepszemu zarządzaniu problemami;
  • bardziej stabilne środowisko usług.

Podczas gdy ITIL jest formalnym zestawem procesów, to Devops jest bardziej filozofią, która angażuje ludzi, procesy i technologie w celu zachęcania do współpracy. Devops jest wdrażany w celu stworzenia spójnej i częstej komunikacji między pracownikami Dev, jak i Ops w całym cyklu życia oprogramowania, a tym samym niweluje bariery pomiędzy nimi. Zastosowanie podejścia Devops może przynieść następujące korzyści:

  • częste wydawanie i szybszy czas wprowadzania na rynek produktu;
  • zwiększoną stabilność: mniejsza szansa na awarię produktu po jego zainstalowaniu, a także szybszy czas odtworzenia po nieoczekiwanych zdarzeniach;
  • zwiększoną wydajność dzięki automatyzacji;
  • skalowalność procesów (Dev i Ops).

Devops a ITIL® – wspólna droga do sukcesu

Współpraca i komunikacja leżą u podstaw zarówno ITIL®, jak i Devops. W swoich podstawowych celach obie metodologie nie różnią się zbytnio między sobą i nie są ze sobą sprzeczne. Podobnie jak Devops, ITIL® nakłania do korzystania z automatyzacji usług w celu zwiększenia szybkości i efektywności, chociaż kładzie też duży nacisk na mapowanie, analizowanie i planowanie procesów. Nowoczesne podejście mówi, że ITIL® należy uznać za krok w kierunku Devops: dzięki zastosowaniu procesów ITIL® wdrożenie Devops jest łatwiejsze i bardziej wydajne.

Pracownicy działów IT w korporacjach wiedzą, że ITIL® jest koniecznym „złem”. Zastosowane w praktyce pragmatyczne i dostosowane do indywidualnych potrzeb procesy ITIL® mają istotny wpływ na jakość i szybkość dostarczania technologii i oprogramowania w dużych firmach. Ale czy przedsiębiorstwa mogą korzystać zarówno z metodologii Devops jak i ITIL®? Oczywiście, że tak. W wielu organizacjach tak właśnie się dzieje – buduje się mosty między ITIL® i Devops co w zwinny sposób pozwala utrzymać kontrolę nad środowiskiem produkcyjnym, jednocześnie zwiększając szybkość dostarczania nowych funkcji. Z perspektywy klienta nie jest istotne jest jakimi metodami zostanie osiągnięty cel, przy jednoczesnym zachowaniu jakości, harmonogramu i budżetu, ale z perspektywy dostawcy musi istnieć świadomość, że aby spełnić te wymagania należy oprzeć się o właściwe modele i metody. Agile, ITIL® i Devops stanowią w tym obszarze dobre połączenie, dlatego można i warto używać ich jednocześnie i dzięki temu stać się profesjonalnym dostawcą usług.

Dobrą puentą mógłby tu być komentarz Gene Kim’a, badacza, mówcy, wizjonera i guru środowiska Devops, który powiedział: „Od wielu lat czuję się oficjalnym apologetą ITIL® w społeczności Devops, ponieważ zawsze wierzyłem, że Devops i ITIL® powinny być w stanie pokojowo współistnieć, ale dziś czuję, że w społeczności Devops konieczne jest bardziej aktywne działanie – musimy wyciągnąć rękę i stworzyć mosty ze społecznością ITI®L, ponieważ ITIL® jest najsilniejszą i najbardziej ugruntowaną tradycją w dużych, złożonych organizacjach IT”

Przeczytaj także:

7 dobrych praktyk cyfryzacji back-office

Back-office – czyli przejrzysta komunikacja z działem wsparcia

Ilustracja: Pixabay

 

Bądź pierwszy, który skomentuje ten wpis!

Dodaj komentarz

Twój adres email nie zostanie opublikowany.


*