Jak wdrażać DevOps w firmach?
W przeszłości DevOps rozumiano jako sumę kultury współpracy biznesowej oraz narzędzi i procesów mających na celu wyeliminowanie podziału pomiędzy zespołami programistycznymi i operacyjnymi. Poziom dostosowania się do tej filozofii pracy stał się głównym wskaźnikiem stopnia dojrzałości procesów tworzenia oprogramowania w przedsiębiorstwach. Odległe są już czasy, kiedy opracowanie funkcjonalnego, solidnego i skalowalnego kodu było wystarczające, aby zagwarantować, że wszystko będzie przebiegało prawidłowo.
Minęła właśnie dekada od pojawienia się terminu DevOps (development and operations). Od tego czasu firmy poznają korzyści płynące z tej metodologii i wygląda na to, że dziś osiągnęła ona już odpowiedni poziom dojrzałości. Najnowsze badania * pokazują, że 29% firm wprowadziło już system DevOps, a 54% przewiduje, że uczyni to w ciągu najbliższych dwóch lat.
DevOps to metodologia tworzenia oprogramowania oparta na współpracy programistów i administratorów systemów, która pozwala na szybsze tworzenie oprogramowania o wyższej jakości i wysokiej częstotliwości aktualizacji przy jednoczesnej oszczędności kosztów.
Na czym polegają, jakie korzyści przynoszą i jak można wdrożyć te rozwiązania w firmach, to tylko niektóre z kwestii, które poruszono podczas lunchu organizowanego przez Computing pt. „DevOps, a marriage of convenience”. Miguel Recio, Dyrektor Działu Rozwoju Oprogramowania w GMV Secure e-Solutions, wziął udział w spotkaniu, w którym uczestniczyli też inni specjaliści w tej dziedzinie. Wspólnie dokonali oni oceny strategii związanych z wdrażaniem DevOps oraz poziomu dojrzałości i szybkości wdrażania modelu współpracy pomiędzy obszarami programowania i operacyjnymi IT.
Co stanowi pierwszy krok na drodze do wdrożenia DevOps?
Miguel Recio określił trzy etapy procesu wdrażania metodologii DevOps w firmie. Pierwszym i najważniejszym z nich jest analiza zmiany metodologii, kultury organizacyjnej firmy oraz struktury organizacyjnej niezbędnej do prawidłowej koordynacji zespołów programistów i operacyjnych. Bardzo istotne jest przy tym, aby zespoły te były świadome tego, że dążą do wspólnego celu.
Drugim i nie mniej ważnym krokiem jest stworzenie solidnego ekosystemu oprogramowania, umożliwiającego wysoki poziom automatyzacji. Należy zapewnić ciągłość integracji i wdrażania oraz zarządzania infrastrukturą jako kodem.
Trzecim krokiem powinno być wczesne wykrywanie błędów. Niezwykle istotne jest uwzględnienie kwestii bezpieczeństwa w początkowych fazach projektu, w myśl zasady „Security by Design”.